进阶:案例六: Context Menu(静态 与 动态)
实现:
1、add:

2、delete

3、add2

实现步骤:
1、新建属性display_text
2、创建layout

3、代码部分:
add事件:
METHOD onactionadd .
DATA: ls_disp TYPE string.
wd_context->get_attribute(
EXPORTING name = 'DISPLAY_TEXT'
IMPORTING value = ls_disp ).
CONCATENATE ls_disp 'Action1' into ls_disp.
wd_Context->SET_ATTRIBUTE( name = 'DISPLAY_TEXT' value = ls_disp ). ENDMETHOD.
add2事件:
method ONACTIONADD2 .
data: ls_disp type string.
wd_Context->get_attribute(
EXPORTING name = 'DISPLAY_TEXT'
IMPORTING value = ls_disp ).
CONCATENATE ls_disp 'Action2' into ls_disp.
wd_Context->SET_ATTRIBUTE( name = 'DISPLAY_TEXT' value = ls_disp ).
endmethod.
delete事件:
method ONACTIONDELETE .
data: ls_disp type string.
wd_Context->SET_ATTRIBUTE( name = 'DISPLAY_TEXT' value = space ).
endmethod.
方法WDDOONCONTEXTMENU好像没起作用
method WDDOONCONTEXTMENU .
DATA: ls_id type string,
lo_menu type REF TO cl_wd_menu,
lo_menu_item type REF TO cl_wd_menu_action_item.
* get the UI element ID
ls_id = CONTEXT_MENU_EVENT->originator->id.
* if it is the 1st UI,then assign the Cotext Menu statically
IF ls_id = 'TEXT'.
MENU = CONTEXT_MENU_MANAGER->get_context_menu( 'ACTION' ).
ENDIF.
* if it is the 2nd UI,then assign the Cotext Menu programly
IF ls_id = 'TEXT2'.
**runtime object
lo_menu = cl_wd_menu=>new_menu( id = 'ACTION2' ).
**menu itme
lo_menu_item = cl_wd_menu_action_item=>new_menu_action_item(
id = 'ADD2'
on_action = 'ADD2'
text = 'Action2-Add2' ).
**add this item to menu
lo_menu->add_item( lo_menu_item ).
**menu itme
lo_menu_item = cl_wd_menu_action_item=>new_menu_action_item(
id = 'DELETE2'
on_action = 'DELETE'
text = 'Action2-DELETE2' ).
**add this item to menu
lo_menu->add_item( lo_menu_item ).
**return the menu
MENU = lo_menu.
ENDIF.
endmethod.
进阶:案例六: Context Menu(静态 与 动态)的更多相关文章
- WPF案例 (六) 动态切换UI布局
原文:WPF案例 (六) 动态切换UI布局 这个Wpf示例对同一个界面支持以ListView或者CardView的布局方式呈现界面,使用控件ItemsControl绑定数据源,使用DataTempla ...
- webpack4入门到进阶案例实战课程
愿景:"让编程不在难学,让技术与生活更加有趣" 更多教程请访问xdclass.net 第一章 webpack4前言 第一集 webpack4入门到进阶案例实战课程介绍 简介:讲述w ...
- Android中BroadcastReceiver的两种注册方式(静态和动态)详解
今天我们一起来探讨下安卓中BroadcastReceiver组件以及详细分析下它的两种注册方式. BroadcastReceiver也就是"广播接收者"的意思,顾名思义,它就是用来 ...
- Python进阶(十六)----面向对象之~封装,多态,鸭子模型,super原理(单继承原理,多继承原理)
Python进阶(十六)----面向对象之~封装,多态,鸭子模型,super原理(单继承原理,多继承原理) 一丶封装 , 多态 封装: 将一些东西封装到一个地方,你还可以取出来( ...
- SpringBoot进阶教程(六十四)注解大全
在Spring1.x时代,还没出现注解,需要大量xml配置文件并在内部编写大量bean标签.Java5推出新特性annotation,为spring的更新奠定了基础.从Spring 2.X开始spri ...
- Bing Maps进阶系列六:使用Silverlight剪切(Clip)特性实现Bing Maps的迷你小地图
Bing Maps进阶系列六:使用Silverlight剪切(Clip)特性实现Bing Maps的迷你小地图 Bing Maps Silverlight Control虽然为我们提供了简洁.方面的开 ...
- SpringBoot进阶教程(六十一)intellij idea project下建多个module搭建架构(下)
在上一篇文章<SpringBoot进阶教程(六十)intellij idea project下建多个module(上)>中,我们已经介绍了在intellij idea中创建project之 ...
- Spring进阶案例之注解和IoC案例
Spring进阶案例之注解和IoC案例 一.常见的注解分类及其作用 从此前的基于xml的IoC开发案例和依赖注入案例中,我们可以将xml配置归纳为: <bean id="" ...
- SpringBoot进阶教程(六十五)自定义注解
在上一篇文章<SpringBoot进阶教程(六十四)注解大全>中介绍了springboot的常用注解,springboot提供的注解非常的多,这些注解简化了我们的很多操作.今天主要介绍介绍 ...
随机推荐
- Arachnid包含一个简单的HTML剖析器能够分析包含HTML内容的输入流
Arachnid是一个基于Java的web spider框架.它包含一个简单的HTML剖析器能够分析包含HTML内容的输入流.通过实现Arachnid的子类就能够开发一个简单的Web spiders并 ...
- android 发送短信 怎样做到一条一条的发送,仅仅有在上一条发送成功之后才发送下一条短信
android发送短信截获上一条发送是否成功,然后再来发送下一条短信 1.问题:在项目中遇到例如以下要求:待发短信有N条,实现一条一条的发送并在上一条短信发送成功之后再来发送下一条. for(int ...
- G-Sensor 校准标准
在桌面上水平平,自己的前表面. 此时Z轴应+值,和值至9.8大约,x.y轴应0值大约.它是平行于主体x轴,固定的左,提起右侧时,,x轴数值它应0开始增加.直到垂直时,+9.8大约. 为y轴.下面固定. ...
- opencv保存视频
利用opencv提供的方法,从摄像头获取视频,并保存为.avi格式文件. win8.1,opencv248,vs2013下测试 #include<opencv\cv.h> #include ...
- 第三方系统打开EAFC的实现
前言:EAFC是我们公司的一个框架,一个项目上,客户的OA系统要调用我们推送过去的代办任务,希望能打开我们的代办处理界面,我们的代办处理界面是winform的.引出给出了以下的一个方案.在此备存. - ...
- 让你的 Qt 桌面程序看上去更加 native(一共六篇)
<让你的 Qt 桌面程序看上去更加 native>是一个系列文章.在这个系列中,你将会了解到如何让你的 Qt 桌面应用程序看上去更加 native.这里,我假设你已经清楚如何使用 Qt 编 ...
- android 4.0后不允许屏蔽掉home键
屏蔽home键的方法 // 屏蔽掉Home键 public void onAttachedToWindow() { this.getWindow().setType(WindowManager.Lay ...
- HTML5小游戏《智力大拼图》发布,挑战你的思维风暴
一,前言 本 游戏 是鄙人研究lufylegend数日之后,闲暇之余写下的.本游戏运用全新的技术 html 5写成的.游戏引擎为国产的lufylegend.js,大家可以去它的官网看看.游戏处于测 ...
- Swift - 表格图片加载优化(拖动表格时不加载,停止时只加载当前页图片)
列表的单元格中包含有图片在开发中很常见.通常我们可以直接在tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIn ...
- 如何在Windows上配置EBS R12.1.3的OAF开发环境
1.找到想要开发的EBS OAF扩展对应的PATCH,可以参照下面的Note,因为我要做的是R12.1.3的开发,所以要下载p9879989_R12_GENERIC OA Framework - Ho ...