1.11 UI Element:Tabstrip使用

本实例显示UI Element:Tabstrip的使用。

1.创建Component;

2.选择Layout页签,设置页面;

创建UI Element:Tabstrip,插入两个Tab;

Tab1 ID: T_TAB1;

Tab2 ID:T_TAB2;

其中Tab1,Tab2简单显示TextView;

创建Events对应Action:

TAB_CLOSE:当Tab关闭时调用;

TAB_SELECT:当Tab选择切换时调用;

3.设置Tab属性;

closeable:勾选上表示Tab右上角可以勾选叉掉,触发TAB_CLOSE方法;

visible:设置绑定第四步创建的Context节点值,实现动态控制;

4.创建Context节点;

TAB1_VISIBLE:boolean类型,控制Tab1是否可见;

TAB2_VISIBLE:boolean类型,控制Tab2是否可见;

5.初始化显示两个Tab,INIT_TAB方法在WDDOINIT中调用;

method INIT_TAB .
DATA:lo_node TYPE REF TO if_wd_context_node.
DATA:lo_element TYPE REF TO if_wd_context_element.
DATA:ls_tabconfig TYPE wd_this->Element_tab_config. lo_node = wd_context->get_child_node( name = wd_this->WDCTX_TAB_CONFIG ).
"初始值
ls_tabconfig-tab1_visible = abap_true.
ls_tabconfig-tab2_visible = abap_true.
"绑定值
lo_node->bind_structure( new_item = ls_tabconfig set_initial_elements = abap_true ).
endmethod. 

6.实现TAB_SELECT方法,因为是Action,所以方法名ONACTION开头;

method ONACTIONTAB_SELECT .
DATA:lv_msg TYPE string.
"当tab选择时,获取选择tab
lv_msg = wdevent->get_string( name = 'TAB' ).
lv_msg = '选择Tab:' && lv_msg.
wd_comp_controller->show_msg( msg = lv_msg msg_type = 'S' ).
endmethod. 

7.实现TAB_CLOSE方法;

method ONACTIONTAB_CLOSE .
DATA:lo_node TYPE REF TO if_wd_context_node.
DATA:lo_element TYPE REF TO if_wd_context_element.
DATA:ls_tabconfig TYPE wd_this->Element_TAB_CONFIG.
DATA:lv_name TYPE string. lv_name = wdevent->get_string( 'TAB' ).
lo_node = wd_context->get_child_node( name = wd_this->WDCTX_TAB_CONFIG ).
lo_node->get_static_attributes( IMPORTING static_attributes = ls_tabconfig ).
"点击close时,设置Tab不可见
IF lv_name cs 'T_TAB1'.
CLEAR ls_tabconfig-tab1_visible.
ELSEIF lv_name cs 'T_TAB2'.
CLEAR ls_tabconfig-tab2_visible.
ENDIF. lo_node->bind_structure( new_item = ls_tabconfig set_initial_elements = abap_true ).
endmethod. 

8.执行显示,选择Tab2时,获取选择的Tab ID;

WDA学习(18):UI Element:TabStrip使用的更多相关文章

  1. AngularJS学习 之 UI以及逻辑生成

    学习<Angular高级编程>理解如下 要求: 创建如下界面,有导航栏,一个Watchlists面板,面板上有个加号button,一句说明“”Use+to create a list“” ...

  2. Android学习笔记⑤——UI组件的学习TextView相关

    TextView是一个强大的视图组件,直接继承了View,同时也派生出了很多子类,TextView其作用说白了就是在布局中显示文本,有点像Swing编程中的JLabel标签,但是他比JLabel强大的 ...

  3. Swift学习之UI开发初探

    Swift是供iOS和OS X应用编程的新编程语言.相信很多开发者都在学习这门新语言.废话不多说,下面我就来学习使用Swift创建一个简单的UI应用程序. AD: 概述 Apple近日发布了Swift ...

  4. 【JS】学习18天Jquery Moblie的总结笔记。

    现在是2013年11月18日1:53分,从1号开始学习JqueryMoblie(简称JQM),这些天遇到的问题,和走的弯路还真不少. 先做个小总结,做了那么多天的一些收获: ●JQM是一个手机网站/轻 ...

  5. React 学习(一) ---- React Element /组件/JSX

    学习React的时候,你可能听到最多的就是要先学习webpack, babel,要先学会配置然后才能学react 等等,一堆的配置就把我们吓着了,根本就没有心情就学习react了.其实在最开始学习re ...

  6. Jquery学习---Easy UI 框架

    Jquery的easyui 1.1. easyui的目录分析 以 jquery Easy UI 1.3.2 版本学习 demo 实例 locale 国际化信息 plugins 框架一些插件 src 源 ...

  7. 安卓学习之--UI控件用法 单选 按钮 下拉框

    1.单选 .RadioGroup 可将各自不同的RadioButton ,设限于同一个Radio 按钮组,同一个RadioGroup 组里的按钮,只能做出单一选择(单选题). <RadioGro ...

  8. swift学习之UI控件(一)

    // //  ViewController.swift //  test // //  Created by chuangqu on 15/7/23. //  Copyright (c) 2015年 ...

  9. iOS学习之UI可视化编程-StoryBoard

    一.StoryBoard与xib 对比: 相同点:都属于IB编程的方式,可以快速构建GUI. 不同点:xib侧重于单文件(单独的控制器或者视图)编辑,storyboard侧重于多页面关联.storyb ...

  10. iOS学习之UI可视化编程-XIB

    一.Interface Builder可视化编程 1.Interface Builder简介: GUI:图形用户界面(Graphical User Interface,简称GUI,又称图形用户接口)是 ...

随机推荐

  1. leecode70. 爬楼梯

    70. 爬楼梯 假设你正在爬楼梯.需要 n 阶你才能到达楼顶. 每次你可以爬 1 或 2 个台阶.你有多少种不同的方法可以爬到楼顶呢? 示例 1: 输入:n = 2 输出:2 解释:有两种方法可以爬到 ...

  2. spring 理念与项目构建

    spring理念: 使现有的技术更容易使用,其本身是一个大杂烩,整合了现有的技术框架. ssh: struct2 spring hibernate ssm :springmvc spring myba ...

  3. React 使用链表遍历组件树

    React 为在有限的资源情况下,更好地控制UI的更新,提出了时间分片的概念.以达到三个目标: performing non-blocking rendering(无阻塞渲染):applying up ...

  4. UPPER VSCODE

  5. 如何将SinglaR与MVC和Web Api集成

    一:SinglaR与MVC结合 1:新建一个MVC的项目 2:新建一个SignalR"永久链接类"=>MyConnection1 3:主要的代码要写一个泛型继承Control ...

  6. 性能测试-top-实时显示系统中各个进程的资源占用状况, 也可以查看线程

    1.top命令介绍 top命令是Linux系统中常用的性能分析工具,可以实时地查看系统的运行情况,比如内存.CPU.负载以及各个进程的资源占用情况 top界面主要分为两个部分,前5行展示的是系统的整体 ...

  7. Ubuntu 复制粘贴快捷键

    打开命令行terminal ctrl+alt+t 复制粘贴 ctrl+shift+c ctrl+shift+v /usr/share/applications/ 这个文件夹可以创建桌面快捷方式 换源 ...

  8. 反射 1 加载指定的DLL

    我们通常 都是用反射来操作指定的程序集(dll,exe). 需要引用 System.Reflection 有三种加载方式 Assembly assembly = Assembly.Load(" ...

  9. (0501)phase机制

    (1)启动seq: (2) 0312:

  10. Windows10+VS2019从源码编译 Qt5

    参考 Windows10+MSVC(VS2022)从源码编译QT5.12.11 - 知乎 (zhihu.com) qt-labs/vstools ~ qt-labs/vstools (github.c ...