ABAP中CHECKBOX 和LISTBOX的使用(屏幕字段的控制)1
来源:互联网 发布:代理商授权书源码系统 编辑:程序博客网 时间:2024/04/28 15:23
*&---------------------------------------------------------------------*
*& Report ZDIALOGTEST
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zdialogtest.
TYPE-POOLS: vrm. "存放combobox内容的type pool
DATA: name TYPE vrm_id, "list box的名称
list TYPE vrm_values, "list box的值
value LIKE LINE OF list."list box的结构
*定义checkbox,指定command,为了能够响应选择屏幕中值的改变
PARAMETERS: p_cb1 TYPE c AS CHECKBOX DEFAULT 'X' USER-COMMAND check,
p_cb2 TYPE c AS CHECKBOX DEFAULT 'X' USER-COMMAND check.
*定义listbox,必须指定visible length
PARAMETERS: p_list1(10) TYPE c AS LISTBOX
VISIBLE LENGTH 15 ,
p_list2(20) TYPE c AS LISTBOX
VISIBLE LENGTH 25 .
*开始执行
AT SELECTION-SCREEN OUTPUT .
*选择1而没有选择2
IF p_cb1 = 'X' AND p_cb2 = ''.
*向listbox里面添加值
REFRESH list .
value-key = '1111111111' . "这个就是变量P_LIST的值
value-text = '1111111111' . "这个是text
APPEND value TO list .
value-key = '2222222222' .
value-text = '2222222222' .
APPEND value TO list .
value-key = '3333333333' .
value-text = '3333333333' .
APPEND value TO list .
*调用函数显示listbox里面的值
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'P_LIST1'
values = list.
*把第二个listbox的值清空,并且不能输入
CLEAR p_list2 .
LOOP AT SCREEN .
IF screen-name = 'P_LIST2' .
screen-input = 0 .
MODIFY SCREEN .
ENDIF .
ENDLOOP .
*选择2,没有选择1,同上
ELSEIF p_cb2 = 'X' AND p_cb1 = ''.
REFRESH list .
value-key = 'AAAAAAAAAAAAAAAAAAAA' .
value-text = 'AAAAAAAAAAAAAAAAAAAA' .
APPEND value TO list .
value-key = 'BBBBBBBBBBBBBBBBBBBB' .
value-text = 'BBBBBBBBBBBBBBBBBBBB' .
APPEND value TO list .
value-key = 'CCCCCCCCCCCCCCCCCCCC' .
value-text = 'CCCCCCCCCCCCCCCCCCCC' .
APPEND value TO list .
APPEND value TO list .
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'P_LIST2'
values = list.
*清空listbox 1的值
CLEAR p_list1 .
LOOP AT SCREEN .
IF screen-name = 'P_LIST1' .
screen-input = 0 .
MODIFY SCREEN .
ENDIF .
ENDLOOP .
*都没有选择,都清空且不能输入
ELSEIF p_cb1 = '' AND p_cb2 = '' .
CLEAR: p_list1,p_list2 .
LOOP AT SCREEN .
IF screen-name = 'P_LIST1' .
screen-input = 0 .
MODIFY SCREEN .
ENDIF .
ENDLOOP .
LOOP AT SCREEN .
IF screen-name = 'P_LIST2' .
screen-input = 0 .
MODIFY SCREEN .
ENDIF .
ENDLOOP .
*都选,执行
ELSEIF p_cb1 = 'X' AND p_cb2 = 'X' .
REFRESH list .
value-key = '1111111111' .
value-text = '1111111111' .
APPEND value TO list .
value-key = '2222222222' .
value-text = '2222222222' .
APPEND value TO list .
value-key = '3333333333' .
value-text = '3333333333' .
APPEND value TO list .
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'P_LIST1'
values = list.
REFRESH list .
value-key = 'AAAAAAAAAAAAAAAAAAAA' .
value-text = 'AAAAAAAAAAAAAAAAAAAA' .
APPEND value TO list .
value-key = 'BBBBBBBBBBBBBBBBBBBB' .
value-text = 'BBBBBBBBBBBBBBBBBBBB' .
APPEND value TO list .
value-key = 'CCCCCCCCCCCCCCCCCCCC' .
value-text = 'CCCCCCCCCCCCCCCCCCCC' .
APPEND value TO list .
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'P_LIST2'
values = list.
ENDIF .
START-OF-SELECTION .
*输出到第二屏幕看看
*& Report ZDIALOGTEST
*&
*&---------------------------------------------------------------------*
*&
*&
*&---------------------------------------------------------------------*
REPORT zdialogtest.
TYPE-POOLS: vrm. "存放combobox内容的type pool
DATA: name TYPE vrm_id, "list box的名称
list TYPE vrm_values, "list box的值
value LIKE LINE OF list."list box的结构
*定义checkbox,指定command,为了能够响应选择屏幕中值的改变
PARAMETERS: p_cb1 TYPE c AS CHECKBOX DEFAULT 'X' USER-COMMAND check,
p_cb2 TYPE c AS CHECKBOX DEFAULT 'X' USER-COMMAND check.
*定义listbox,必须指定visible length
PARAMETERS: p_list1(10) TYPE c AS LISTBOX
VISIBLE LENGTH 15 ,
p_list2(20) TYPE c AS LISTBOX
VISIBLE LENGTH 25 .
*开始执行
AT SELECTION-SCREEN OUTPUT .
*选择1而没有选择2
IF p_cb1 = 'X' AND p_cb2 = ''.
*向listbox里面添加值
REFRESH list .
value-key = '1111111111' . "这个就是变量P_LIST的值
value-text = '1111111111' . "这个是text
APPEND value TO list .
value-key = '2222222222' .
value-text = '2222222222' .
APPEND value TO list .
value-key = '3333333333' .
value-text = '3333333333' .
APPEND value TO list .
*调用函数显示listbox里面的值
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'P_LIST1'
values = list.
*把第二个listbox的值清空,并且不能输入
CLEAR p_list2 .
LOOP AT SCREEN .
IF screen-name = 'P_LIST2' .
screen-input = 0 .
MODIFY SCREEN .
ENDIF .
ENDLOOP .
*选择2,没有选择1,同上
ELSEIF p_cb2 = 'X' AND p_cb1 = ''.
REFRESH list .
value-key = 'AAAAAAAAAAAAAAAAAAAA' .
value-text = 'AAAAAAAAAAAAAAAAAAAA' .
APPEND value TO list .
value-key = 'BBBBBBBBBBBBBBBBBBBB' .
value-text = 'BBBBBBBBBBBBBBBBBBBB' .
APPEND value TO list .
value-key = 'CCCCCCCCCCCCCCCCCCCC' .
value-text = 'CCCCCCCCCCCCCCCCCCCC' .
APPEND value TO list .
APPEND value TO list .
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'P_LIST2'
values = list.
*清空listbox 1的值
CLEAR p_list1 .
LOOP AT SCREEN .
IF screen-name = 'P_LIST1' .
screen-input = 0 .
MODIFY SCREEN .
ENDIF .
ENDLOOP .
*都没有选择,都清空且不能输入
ELSEIF p_cb1 = '' AND p_cb2 = '' .
CLEAR: p_list1,p_list2 .
LOOP AT SCREEN .
IF screen-name = 'P_LIST1' .
screen-input = 0 .
MODIFY SCREEN .
ENDIF .
ENDLOOP .
LOOP AT SCREEN .
IF screen-name = 'P_LIST2' .
screen-input = 0 .
MODIFY SCREEN .
ENDIF .
ENDLOOP .
*都选,执行
ELSEIF p_cb1 = 'X' AND p_cb2 = 'X' .
REFRESH list .
value-key = '1111111111' .
value-text = '1111111111' .
APPEND value TO list .
value-key = '2222222222' .
value-text = '2222222222' .
APPEND value TO list .
value-key = '3333333333' .
value-text = '3333333333' .
APPEND value TO list .
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'P_LIST1'
values = list.
REFRESH list .
value-key = 'AAAAAAAAAAAAAAAAAAAA' .
value-text = 'AAAAAAAAAAAAAAAAAAAA' .
APPEND value TO list .
value-key = 'BBBBBBBBBBBBBBBBBBBB' .
value-text = 'BBBBBBBBBBBBBBBBBBBB' .
APPEND value TO list .
value-key = 'CCCCCCCCCCCCCCCCCCCC' .
value-text = 'CCCCCCCCCCCCCCCCCCCC' .
APPEND value TO list .
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
id = 'P_LIST2'
values = list.
ENDIF .
START-OF-SELECTION .
*输出到第二屏幕看看
WRITE: p_list1 ,/ p_list2 .
http://tech.chinaunix.net/a2009/0716/607/000000607414.shtml
- ABAP中CHECKBOX 和LISTBOX的使用(屏幕字段的控制)1
- ABAP中CHECKBOX 和LISTBOX的使用(屏幕字段的控制)2
- ABAP CHECKBOX 和LISTBOX使用
- ABAP CHECKBOX 和LISTBOX使用
- ABAP CHECKBOX 和LISTBOX使用指南
- ABAP CHECKBOX 和LISTBOX使用指南
- ABAP CHECKBOX 和LISTBOX使用指南
- ABAP--如何使用'F4IF_INT_TABLE_VALUE_REQUEST'填写屏幕的多个字段
- ABAP--如何使用'F4IF_INT_TABLE_VALUE_REQUEST'填写屏幕的多个字段
- PowerBuilder 8.0中ListBox的CheckBox使用方法。
- PowerBuilder 8.0中ListBox的CheckBox使用方法。
- abap报表中(ALV或者普通屏幕的定制控制中)如何让列可以使用求和按钮
- ABAP 初级的listbox使用,高手不要嘲笑哟
- 控制CComboBox中ListBox的DropDown & Back
- ABAP多标签选择屏幕的使用
- abap-BAPI_MATERIAL_SAVEDATA 扩展字段的使用
- Form中增加listbox和checkbox
- demon使用MFC listBox 和 checkbox笔记
- 安装 xampp
- 《构建高性能的web站点》读书笔记--组件分离
- 高德完美获取地理位置信息并显示出来~~
- Battery eliminator circuit
- C/C++带括号四则运算
- ABAP中CHECKBOX 和LISTBOX的使用(屏幕字段的控制)1
- FTP文件上传与下载(JAVA)
- android sqlite数据库增删改查
- IM-A820L第一屏与第二屏已破(非开机动画)(应该泛泰机型通用)
- C#发送邮件(添加附件)!
- 洗牌算法
- python os模块总结
- CSS浮动属性Float详解
- UITableViewCell重用机制理解