Burning написал(а):
Собственно сабж в заголовке темы. Можно ли сделать кнопку с выпадающим списком(listbox)?
Вам поможет класс CL_GUI_GOS_CONTAINER, создающий контейнер прямо в Титлбаре экрана. В этот контейнер помещаете свой тулбар с дропдаун-списком (класс CL_GUI_TOOLBAR). Приблизительно так, как в примере (там, правда, простые кнопки):
Code:
*&---------------------------------------------------------------------*
*& Module 0100_PBO OUTPUT
*&---------------------------------------------------------------------*
MODULE 0100_pbo OUTPUT.
INCLUDE <icon>.
DATA go_container TYPE REF TO cl_gui_gos_container.
DATA go_toolbar TYPE REF TO cl_gui_toolbar.
* CALL METHOD cl_gos_starter=>display.
CHECK go_container IS NOT BOUND .
CREATE OBJECT go_container
EXPORTING
width = 200
no_autodef_progid_dynnr = 'X'
EXCEPTIONS
OTHERS = 5.
CHECK sy-subrc = 0.
CREATE OBJECT go_toolbar
EXPORTING
parent = go_container.
CALL METHOD go_toolbar->add_button
EXPORTING
fcode = 'X'
icon = icon_led_red
butn_type = '0'
text = 'X'
quickinfo = 'ButtonX'.
CALL METHOD go_toolbar->add_button
EXPORTING
fcode = 'Y'
icon = icon_led_yellow
butn_type = '0'
text = 'Y'
quickinfo = 'ButtonY'.
CALL METHOD go_toolbar->add_button
EXPORTING
fcode = 'Z'
icon = icon_led_green
butn_type = '0'
text = 'Z'
quickinfo = 'ButtonZ'.
ENDMODULE. " 0100_PBO OUTPUT