如何同时动态设置按钮工具提示,文字和图标?
问题描述:
我在模块池屏幕上有一个按钮。我需要根据逻辑/条件动态地更改图标,工具提示和文本。我可以成功更改图标和文本,但无法将所有三项内容(图标,文本和工具提示)一起更改。如何同时动态设置按钮工具提示,文字和图标?
样品PBO代码:
Data but(30) type c." here but is the name of button in screen.
write 'icon xxx' as ICON to but.
Concatenate but 'click here' into but separated by space.
它没有设置提示,这应该显示“请点击此处继续”的值。我怎样才能做到这一点?
答
使用ICON_CREATE FM代替。
下面是示例如何改变即时所有三个属性:
PARAMETERS: p_icon TYPE icon_d MATCHCODE OBJECT h_icon,
p_text TYPE string,
p_toolt TYPE string.
SELECTION-SCREEN BEGIN OF SCREEN 500.
SELECTION-SCREEN PUSHBUTTON 49(30) but USER-COMMAND ret.
SELECTION-SCREEN END OF SCREEN 500.
AT SELECTION-SCREEN.
CASE sy-ucomm.
WHEN 'ONLI'.
CALL FUNCTION 'ICON_CREATE'
EXPORTING
name = p_icon
text = p_text
info = p_toolt
add_stdinf = 'X'
IMPORTING
result = but.
CALL SELECTION-SCREEN 500.
WHEN 'RET'.
LEAVE TO SCREEN 0.
WHEN OTHERS.
ENDCASE.
你为什么不定义所有按键,并动态地隐藏你不需要的按钮? – Oguz