Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

Strechable Custom container

Former Member
0 Likes
852

Hi Experts,

If i used docking container displayed window is strechable. when i use custom container displayed window is fixed. How can i do this custom container as strechable

Thanks in Advance

Siva

5 REPLIES 5
Read only

former_member69765
Contributor
0 Likes
712

You can also use the splitter container..

Basically.. You have one custom container. Split it into more than 1 (say 2)

So you can now resize both of them and place different controls in both containers.

Rest I leave it to you .. to explore and learn ..

PS: I found one tutorial here : http://www.abaplearning.com on the front page titled Splitter Container

Regards,

Varun

Read only

uwe_schieferstein
Active Contributor
0 Likes
712

Hello Siva

When you define your custom control in the screen painter define it as resizable for both length and width.

Regards

Uwe

Read only

Former Member
0 Likes
712

I don't think you can resize when you go for Custom container.what is the problem with the Docking container.

Read only

0 Likes
712

Create a Custom Control on the dynpro. Double click on it. Check both 'resizing' checkboxes. that's it.

The maximum size is limited to the modelled size, so be sure to size it as big as possible.

Best regards

Torsten

Read only

0 Likes
712

You do not need any custom controls in your screen.

Just attach a docking container to you screen and place anything else inside the docking container.

Example for a resizable split container for two alv grids:

DATA: lo_top TYPE REF TO cl_gui_container.
  DATA: lo_bottom TYPE REF TO cl_gui_container.

  IF mo_dock_cont IS INITIAL.

*-create the three screen areas
    CREATE OBJECT mo_dock_cont
      EXPORTING
        side      = cl_gui_docking_container=>dock_at_left
        extension = 9999.

    CREATE OBJECT mo_split_cont
      EXPORTING
        parent  = mo_dock_cont
        rows    = 2
        columns = 1.

*-set the layout of the splitter
    mo_split_cont->set_border( cl_gui_cfw=>true ).
    mo_split_cont->set_row_mode( mode = cl_gui_splitter_container=>mode_relative ).
    mo_split_cont->set_row_height( id = 1 height = 30 ).
    mo_split_cont->set_row_sash( id    = 1
                                 type  = cl_gui_splitter_container=>type_sashvisible
                                 value = cl_gui_splitter_container=>true ).
    mo_split_cont->set_row_sash( id    = 2
                                 type  = cl_gui_splitter_container=>type_sashvisible
                                 value = cl_gui_splitter_container=>true ).
*--get reference to the screen areas
    lo_top    ?= mo_split_cont->get_container( row = 1 column = 1 ).
    lo_bottom ?= mo_split_cont->get_container( row = 2 column = 1 ).
*--connect the alv lists to the top and bottom container
    CREATE OBJECT mo_alv_1
      EXPORTING
        i_parent = lo_top.
    CREATE OBJECT mo_alv_2
      EXPORTING
        i_parent = lo_bottom.
    me->read_db( ).
    me->build_alv( ).