选择屏幕——按钮、单选复选框详解编程语言

12.6.     按钮、单选复选框、下拉框的FunCode

如果复选框与单选按钮没有设置Function Code,则它们就会像普通的输入框一样,即使状态发生了改变,也不会触发PAI事件

对话屏幕中的按钮、复选框、单选按钮、下拉框的Function Code都是通过屏幕元素 attributes来设置的;选择屏幕中的FunCode则通过USER-COMMAND选项来设置

12.6.1.           选择屏幕中的按钮

SELECTION-SCREEN:PUSHBUTTON 2(12)  but1 USER-COMMAND cli1.
INITIALIZATION.
but1 ‘Button 1’.可直接设置按钮上的标签文本
AT SELECTION-SCREEN.
  CASE syucomm.
    WHEN ‘CLI1’.
  ENDCASE.

12.6.2.           选择屏幕中的单选/复选按钮:点击时显示、隐藏其他屏幕元素

更多请参考动态修改屏幕章节

PARAMETERS show_all AS CHECKBOX USER-COMMAND flag.
PARAMETERS hide  RADIOBUTTON GROUP  rd USER-COMMAND flag2 DEFAULT ‘X’.
PARAMETERS show  RADIOBUTTON GROUP  rd .
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME .
  PARAMETERSp1 TYPE c LENGTH 10 ,
              p2 TYPE c LENGTH 10.
SELECTION-SCREEN END OF BLOCK b1.
SELECTION-SCREEN BEGIN OF BLOCK b2 WITH FRAME TITLE t.
  PARAMETERSp3 TYPE c LENGTH 10 MODIF ID bl2,
              p4 TYPE c LENGTH 10 MODIF ID bl2.
SELECTION-SCREEN END OF BLOCK b2.
SELECTION-SCREEN BEGIN OF BLOCK b3 WITH FRAME .
  PARAMETERSp5 TYPE c LENGTH 10 MODIF ID bl3,
              p6 TYPE c LENGTH 10 MODIF ID bl3.
SELECTION-SCREEN END OF BLOCK b3.

INITIALIZATION.
  t ‘—-ALL—-‘.
单先与复选框、下拉列表项点击触发PAI后,接下来还会触发屏幕的PBO(回车也是这样),但如果点击的是执行按钮,则不会接着触发屏幕的PBO,除非没有输出或在Basic List列表页面上点击返回按钮时,才会触发PBO
AT SELECTION-SCREEN OUTPUT.
  LOOP AT SCREEN.
    IF show_all ‘X’  AND screengroup1 ‘BL2’.
      screenactive ‘1’.显示
      MODIFY SCREEN.
    ELSEIF screengroup1 ‘BL2’.
      screenactive ‘0’.隐藏
      MODIFY SCREEN.
    ENDIF.
    IF  show ‘X’  AND screengroup1 ‘BL3’.
      screenactive ‘1’.
      MODIFY SCREEN.
    ELSEIF  screengroup1 ‘BL3’.
      screenactive ‘0’.
      MODIFY SCREEN.
    ENDIF.
  ENDLOOP.

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/20124.html

(0)
上一篇 2021年7月19日
下一篇 2021年7月19日

相关推荐

发表回复

登录后才能评论