hi, ich habe meinen container nun gesplittet:
USING cv_container TYPE REF TO cl_gui_docking_container
CHANGING cv_splitter TYPE REF TO cl_gui_splitter_container
cv_top_alv TYPE REF TO cl_gui_container
cv_bottom_tree TYPE REF TO cl_gui_container.
* set container for horizontal split
CREATE OBJECT cv_splitter
EXPORTING
parent = cv_container
rows = 2
columns = 1.
* get front container
CALL METHOD cv_splitter->get_container
EXPORTING
row = 1
column = 1
RECEIVING
container = cv_top_alv.
allerdings ... wie soll ich das problem beschreiben... sieht der screen so aus:
_____________________________________
|____________________________________|ALV
|____________________________________| <------
|____________________________________|TREE
da wo der pfeil hinzeigt... die gesplitteten container liegen nicht direkt aneinander, sonder da iss halt noch luft zwischen. so ne art "dritter" container, den ich allerdings ja nich angelegt habe...
weiß einer rat wie ich die container aneinander"schweiße" ^^?
kann es sein das das mit dieser methode zu machen ist?
* set relative coordinates
cl_gui_splitter_container->set_column_mode(
EXPORTING
mode = cl_gui_splitter_container=>mode_relative
EXCEPTIONS
OTHERS = 1 ).
funktioniert bei mir zwar nich... aber könnte ja sein
habt ihr sonst echt keine vorschläge oder ideen...oder hab ich meine frage unklar gestellt?
thx im voraus
das liegt eher daran, dass das von dir beschriebene Verhalten des Splitters absolut ungewöhnlich ist.
Extrahier doch ma ausl deinem Programm einen minimalen Part, den du dann hier posten kannst und der immer noch das seltsame Verhalten aufweist. Dann könnte man es wenigstens nachstellen und dir sagen ob es evtl. an der Gui liegt.
du hast recht, hab gerade ein extra programm angelegt und die container mit der von mir oben beschriebenen source angelegt. es funktioniert... komisch...
ich werde mal versuchen den fehler zu rekonstruieren ^^....
hatt mich nun zwar bisschen zeit gekostet, aber habe den fehler mit einem einfachen programm rekonstruieren können, hier die source:
*&---------------------------------------------------------------------*
*& Include ZPROBLEMTOP Modulpool *
*& *
*&---------------------------------------------------------------------*
PROGRAM zproblem .
TABLES sflight.
INCLUDE <icon>.
* Container variables
DATA: ref_container TYPE REF TO cl_gui_docking_container,
ref_splitter TYPE REF TO cl_gui_splitter_container,
ref_top_alv TYPE REF TO cl_gui_container,
ref_bottom_tree TYPE REF TO cl_gui_container,
ref_alv TYPE REF TO cl_gui_alv_grid,
ref_toolbar TYPE REF TO cl_gui_toolbar,
ref_tree TYPE REF TO cl_gui_alv_tree.
* ALV-Grid (Shipping Orders)
DATA: gt_fieldcat_alv TYPE lvc_t_fcat,
gs_layout_alv TYPE lvc_s_layo,
gt_exclude TYPE ui_functions. "Toolbarfunktionen ausblenden
* Tree
DATA: gt_number TYPE /lot/refnr, "Gruppierungsnummer
gf_act_imp TYPE char1,
gref_exit_01 TYPE REF TO /lot/if_ex_vl_snd_krit,
gt_fieldcat_tree TYPE lvc_t_fcat.
DATA: gt_sflight TYPE TABLE OF sflight,
gt_sflight_tree TYPE TABLE OF sflight.
*******************************
*******START OF SELECTION******
*******************************
* create tree
CREATE OBJECT ref_tree
EXPORTING
parent = ref_bottom_tree
node_selection_mode = cl_gui_column_tree=>node_sel_mode_multiple
EXCEPTIONS
lifetime_error = 1
cntl_system_error = 2
create_error = 3
failed = 4
illegal_node_selection_mode = 5
OTHERS = 6.
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.
* The following function module generates a fieldcatalog according
* to a given structure.
CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
EXPORTING
i_structure_name = 'SFLIGHT'
i_client_never_display = 'X'
i_bypassing_buffer = 'X'
CHANGING
ct_fieldcat = gt_fieldcat_tree.
Ihr könnt das Programm so kopieren (achtung: Modulpool ^^ ), müsste überall laufen, extra umgeschrieben.
Wenn ihr das Programm ausführt werdet ihr sehen was ich mein, iss voll komisch... wenn ihr den fehler gefunden habt, wäre ich euch äußert dankbar um nen verbesserungsvorschlag.
ps: ich glaube bis zur alv programmierung funktioniert es. erst wenn ich den tree anlege fabriziert er son müll...
ich möchte hier keines wegs aufdringlich wirken!, es eilt mit leider nur ein wenig... aber es wundert mich das kein feadback kommt ^^... habt ihr so was noch nie gesehen, oder hatt bis jetzt erst nur einer diesen thread gelesen
mit meiner oben geposteten source müsstet ihr den fehler nachvollziehen können...
ich habe herausbekommen: wenn ich in der obrigen SOURCE im ***TREE*** part alles aussterne und nur:
....hinschreibe, der selbe fehler auftritt.
es muss also an diesem befehl liegen, hier, wo ich das treeobejekt anlege? ich bin mit meinem latein am ende, habe auch keine blasse ahnung wie das zu stande kommt.
wäre sehr nett wenn einer hier posten könnte ob mein fehler behebbar iss oder ob ich damit leben muss ^^? ich danke im voraus
Hallo dawns
Du bist aufdringlich, wenn du alle paar Stunden postest.
Hab das Program mal nachgemacht.
Effekt: Die Container sind korrekt gesplittet: ohne Lücke.
Die Lücke die du siehst ist Teil deines Objekts CV_tree, nämlich der HTML-Header. Wenn du das nicht wilst musst du deinen cv_tree halt ohne diesen
Header instanzieren.