1.17 UI Element:Context Menu使用

本实例测试创建Context Menu.

1.创建Component,View: V_CONTEXT_MENU;

2.创建Context节点;

创建Node:NODE_TV,Cardinality:1..1;

创建Attribute:TV1,类型String;

创建Node:NODE_ATTR,Cardinality:1..1;

创建Attribute:MENU_CHK, 类型WDY_BOOLEAN;

创建Attribute:MENU_RADIOBTN,类型WDR_DEMO_FRUIT;

创建Attribute:MENU_CHK1,类型WDY_BOOLEAN;

3.创建Layout页签;

创建UI Element:MenuBar,ID:MENUBAR;

创建UI Element:Menu,ID:MENU;

创建UI Element:Menu,ID:MENU_SUB1;

创建UI Element:MenuActionItem,ID: MENU_CHG,绑定Action: MENU_CHG;

创建UI Element:MenuActionItem,ID: MENU_ADD,绑定Action:MENU_ADD;

创建UI Element:MenuSeparator,ID:MENU_SEP1;

创建UI Element:Menu,ID:MENU_SUB2;

创建UI Element:MenuRadioButton,ID:MENU_BTN,绑定Action: MENU_SEL,selectedKey绑定Context的Attributes: V_CONTEXT_MENU.NODE_ATTR.MENU_RADIOBTN;

创建UI Element:MenuRadioButton,ID:MENU_BTN1,绑定Action:MENU_SEL,selectedKey绑定Context的Attributes: V_CONTEXT_MENU.NODE_ATTR.MENU_RADIOBTN;

创建UI Element:MenuSeparator,ID:MENU_SEP2;

创建UI Element:Menu,ID:MENU_SUB3;

创建UI Element:MenuCheckBox,ID:MENU_CHK,绑定Action:MENU_TOG,checked绑定Context的Attributes: V_CONTEXT_MENU.NODE_ATTR.MENU_CHK;

创建UI Element:MenuCheckBox,ID:MENU_CHK1,绑定Action:MENU_TOG,checked绑定Context的Attributes: V_CONTEXT_MENU.NODE_ATTR.MENU_CHK1;

创建UI Element:TextView,text绑定Context的Attributes: V_CONTEXT_MENU.NODE_TV.TV1;

4.创建Method页签,实现Action方法;

实现Action: MENU_ADD,Menu选择Add;

代码实例:

  DATA:lo_node TYPE REF TO if_wd_context_node.
DATA:lo_element TYPE REF TO if_wd_context_element. lo_node = wd_context->get_child_node( wd_this->wdctx_node_tv ).
lo_element = lo_node->get_element( ).
lo_element->set_attribute(
EXPORTING
name = 'TV1'
value = 'Menu:add'
).

实现Action:MENU_CHG,Menu选择change;

  DATA:lo_node TYPE REF TO if_wd_context_node.
DATA:lo_element TYPE REF TO if_wd_context_element. lo_node = wd_context->get_child_node( wd_this->wdctx_node_tv ).
lo_element = lo_node->get_element( ).
lo_element->set_attribute(
EXPORTING
name = 'TV1'
value = 'Menu:change'
).

实现Action:MENU_SEL,Menu选择Radio Button;

代码实例:

  DATA:lo_node TYPE REF TO if_wd_context_node.
DATA:lo_element TYPE REF TO if_wd_context_element.
DATA:lo_event TYPE REF TO cl_wd_custom_event.
DATA:lv_string TYPE string.
lo_event = wdevent.
lv_string = lo_event->get_string( name = 'KEY' ).
lv_string = 'Menu:radio button,' && lv_string.
lo_node = wd_context->get_child_node( wd_this->wdctx_node_tv ).
lo_element = lo_node->get_element( ).
lo_element->set_attribute(
EXPORTING
name = 'TV1'
value = lv_string
).

实现Action:MENU_TOG,CheckBox选择事件;

代码实例:

  DATA:lo_node TYPE REF TO if_wd_context_node.
DATA:lo_element TYPE REF TO if_wd_context_element.
DATA:lo_event TYPE REF TO cl_wd_custom_event.
DATA:lv_id TYPE string.
lo_event = wdevent.
lv_id = lo_event->get_string( name = 'ID' ).
lv_id = 'Menu:checkbox' && lv_id.
lo_node = wd_context->get_child_node( wd_this->wdctx_node_tv ).
lo_element = lo_node->get_element( ).
lo_element->set_attribute(
EXPORTING
name = 'TV1'
value = lv_id
).

WDA学习(24):Context Menu使用的更多相关文章

  1. Android -- Options Menu,Context Menu,Popup Menu

    Options Menu                                                                           创建选项菜单的步骤: 1. ...

  2. Android Contextual Menus之一:floating context menu

    Android Contextual Menus之一:floating context menu 上下文菜单 上下文相关的菜单(contextual menu)用来提供影响UI中特定item或者con ...

  3. Tree Context Menu

    Right click on a node to display context menu.   My Documents Photos Program Files Intel Java Micros ...

  4. android学习笔记37——Menu资源

    Menu菜单资源 android应用推荐使用XML来定义菜单,其可提供更好的解耦方式. 菜单资源通常位于res/menu文件夹下,其菜单根元素为<menu.../>,menu元素下可包含子 ...

  5. create Context Menu in Windows Forms application using C# z

    In this article let us see how to create Context Menu in Windows Forms application using C# Introduc ...

  6. Win7/Win8右键菜单管理工具(Easy Context Menu) v1.5 绿色版

    软件名称: Win7/Win8右键菜单管理工具(Easy Context Menu)软件语言: 简体中文授权方式: 免费软件运行环境: Win8 / Win7 / Vista / WinXP软件大小: ...

  7. Description Resource Path Location Type Project configuration is not up-to-date with pom.xml. Select: Maven->Update Project... from the project context menu or use Quick Fix. spark-MT line 1 Maven Co

    1.相信大家新建的maven项目,然后添加好依赖(即修改了pom.xml文件以后就会出现如下所示的错误): Description Resource Path Location Type Projec ...

  8. sublime text 3-right click context menu

    dd a system wide windows explorer button " Edit with Sublime" similar to how Notepad++ doe ...

  9. 手机浏览器中屏蔽img的系统右键菜单context menu

    我们知道通过oncontextmenu事件可以屏蔽浏览器右键菜单 $('img').on("contextmenu",function(E){E.preventDefault(); ...

  10. Vue 2.0 右键菜单组件 Vue Context Menu

    Vue 2.0 右键菜单组件 Vue Context Menu https://juejin.im/entry/5976d14751882507db6e839c

随机推荐

  1. Unity打包发布PC程序之——默认管理员权限运行

    https://blog.csdn.net/x1017619024/article/details/103970708

  2. 使用NibiruSDK 坑

    最近有项目要接NibiruSDK ,在使用时需要用他们提供的软件,进行项目签名,在这里包名前必须是 com.dream.*** ,否则会导致签名失败而且没有任何提示.用DreamClass打开apk, ...

  3. vue 滑动到指定位置

    在Vue中,有三种方式可以实现H5页面滑动至指定位置 方法1: //先获取目标位置距离 mounted() { this.$nextTick(() => { setTimeout(() => ...

  4. Gitbook编写JSON文件

    title: Gitbook编写JSON文件 # 标题 date: 2020-10-31 16:34:30 updated: 2020-12-31 categories: 前端 tags: JSON ...

  5. 【博客】如何在Github上创建博客

    [博客]如何在Github上创建博客 1. 安装nodejs windows安装npm教程--nodejs 2. 安装hexo npm install -g hexo-cli 3. 搭建博客 $ he ...

  6. Ehlib的DBGridEh 控件导出到Excel

    use DBGridEhImpExp //必须引用此单元 procedure TInvoiceManager.ppmSaveSelectionClick(Sender: TObject); proce ...

  7. this指向问题大全和call,apply,bind详解

    详细笔记链接:https://www.jianshu.com/p/bc541afad6ee 函数内外作用域问题: var a = 1function f1(){ var a = 2 console.l ...

  8. VSCode 抽取vue的代码片段

    在vscode中文件-->首选项-->用户片段,输入名字按去确定,输入代码片段 { "vue htm": { "scope": "html ...

  9. How to setup a Chia Harvester on Ubuntu

    How to setup a Chia Harvester on Ubuntu Posted on May 4, 2021 A Chia Harvest is a computer that farm ...

  10. 网络-7 IPv6(下)

    Ipv6实验 一.华为 思科与华为在接口启用ipv6 思科会自动产生local地址 华为不会自动产生local地址 以太网接口有mac地址,所以肯定是有eui64 serial接口是没有mac地址,他 ...