WDA学习(18):UI Element:TabStrip使用
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使用的更多相关文章
- AngularJS学习 之 UI以及逻辑生成
学习<Angular高级编程>理解如下 要求: 创建如下界面,有导航栏,一个Watchlists面板,面板上有个加号button,一句说明“”Use+to create a list“” ...
- Android学习笔记⑤——UI组件的学习TextView相关
TextView是一个强大的视图组件,直接继承了View,同时也派生出了很多子类,TextView其作用说白了就是在布局中显示文本,有点像Swing编程中的JLabel标签,但是他比JLabel强大的 ...
- Swift学习之UI开发初探
Swift是供iOS和OS X应用编程的新编程语言.相信很多开发者都在学习这门新语言.废话不多说,下面我就来学习使用Swift创建一个简单的UI应用程序. AD: 概述 Apple近日发布了Swift ...
- 【JS】学习18天Jquery Moblie的总结笔记。
现在是2013年11月18日1:53分,从1号开始学习JqueryMoblie(简称JQM),这些天遇到的问题,和走的弯路还真不少. 先做个小总结,做了那么多天的一些收获: ●JQM是一个手机网站/轻 ...
- React 学习(一) ---- React Element /组件/JSX
学习React的时候,你可能听到最多的就是要先学习webpack, babel,要先学会配置然后才能学react 等等,一堆的配置就把我们吓着了,根本就没有心情就学习react了.其实在最开始学习re ...
- Jquery学习---Easy UI 框架
Jquery的easyui 1.1. easyui的目录分析 以 jquery Easy UI 1.3.2 版本学习 demo 实例 locale 国际化信息 plugins 框架一些插件 src 源 ...
- 安卓学习之--UI控件用法 单选 按钮 下拉框
1.单选 .RadioGroup 可将各自不同的RadioButton ,设限于同一个Radio 按钮组,同一个RadioGroup 组里的按钮,只能做出单一选择(单选题). <RadioGro ...
- swift学习之UI控件(一)
// // ViewController.swift // test // // Created by chuangqu on 15/7/23. // Copyright (c) 2015年 ...
- iOS学习之UI可视化编程-StoryBoard
一.StoryBoard与xib 对比: 相同点:都属于IB编程的方式,可以快速构建GUI. 不同点:xib侧重于单文件(单独的控制器或者视图)编辑,storyboard侧重于多页面关联.storyb ...
- iOS学习之UI可视化编程-XIB
一.Interface Builder可视化编程 1.Interface Builder简介: GUI:图形用户界面(Graphical User Interface,简称GUI,又称图形用户接口)是 ...
随机推荐
- unity 实现Game窗口的Stats 【转自蛮牛】
using UnityEngine;using System.Text;using UnityEditor; public class ShowFps : MonoBehaviour{ public ...
- Qt使用图片旋转绘制圆环,圆弧类UI界面(方法可适用于winform和WPF等其余UI绘制)
先上效果图: 这个主要是一个试剂杯盘的循环图,相信大家伙一定都想到了使用GDI和三角函数来进行计算,但如果没有实际尝试,可能会踩一些坑,留此文帮助大家方便快捷的绘制出类似圆环的UI效果. 这里主要是使 ...
- Unity模型剖切
效果展示 1.首先先下载一个模型剖切插件Cross-Section插件 没有的下方链接自取 插件下载链接 2.下载之后导入到项目 导入之后的样子如下图 因项目需求需要剖切模型,要使用滑动条进行剖切, ...
- keepalived+nginx+应用
达到的效果就是,每个keepalived中都有一个weight,这个数最大的作为主节点.意外挂掉就另一个升为leader,比如开始一个6,一个5,挂一次这个数减2.6挂一次再启动就是5,4了,两台机器 ...
- rtsp协议转换m3u8
目前项目中使用海康的摄像头,但需要提供实时预览.目前通过转换协议实现预览.同时能够尽量减少服务器的压力,比如生成的ts文件个数. 思路 通过ffmpeg 将rtsp协议转换成hls协议 具体步骤 1. ...
- float高度塌陷和BFC
开启BFC方式: 1.设置浮动float(副作用比较大,不推荐) 2.将元素设置为行内块元素 display:inline-block:(不推荐) 3.将元素的overlfow设置为非visible的 ...
- OS-lab5
OS-lab5 磁盘管理 完成文件系统的第一步就是要能够处理磁盘等外设的信息. lib/syscall_all.c 处理磁盘的信息,最基本的就是对磁盘进行读写操作. sys_write_dev函数用于 ...
- 反射 1 加载指定的DLL
我们通常 都是用反射来操作指定的程序集(dll,exe). 需要引用 System.Reflection 有三种加载方式 Assembly assembly = Assembly.Load(" ...
- ctfshow web入门 命令执行 37-39
37-39 基于 GET 传参的 include() 38.39 是 37 的变种 分析 伪协议常用于文件包含漏洞中 文件包含函数有:include.include_once.require.requ ...
- Linux CentOS7 安装 Qt 5.9.2 和 lableImg
一.安装qt5.9.2 1.安装依赖 yum groupinstall "C Development Tools and Libraries"yum install libgl l ...