在屏幕上创建页签

SAP允许直接通过ABAP代码在屏幕上创建一个页签,相关语法如下。

SELECTION-SCREEN BEGIN OF TABBED BLOCK <block> FOR n LINES.

每个页签都是由一个单独的子屏幕控制,N代表分页控件的高度,屏幕载入时必须先通过INITIALIZATION事件对其属性初始化。下例中将定义一个包含两个页签的TAB控件,代码所下所示。


 1 REPORT ztest_sum.
2
3 TABLES:mara.
4 *TABLES sscrfields. "引用屏幕字段属性
5
6 SELECTION-SCREEN BEGIN OF SCREEN 100 AS SUBSCREEN . "定义子屏幕100
7 SELECTION-SCREEN BEGIN OF BLOCK a1 WITH FRAME TITLE text-001.
8 SELECT-OPTIONS:mat1 FOR mara-matnr NO INTERVALS.
9 SELECTION-SCREEN SKIP 1.
10 PARAMETERS: chk1 AS CHECKBOX DEFAULT ‘X‘.
11 SELECTION-SCREEN END OF BLOCK a1.
12 SELECTION-SCREEN END OF SCREEN 100.
13
14 SELECTION-SCREEN BEGIN OF SCREEN 200 AS SUBSCREEN.
15 PARAMETERS:mat2 LIKE mara-matnr.
16 SELECTION-SCREEN END OF SCREEN 200.
17
18 *定义一个TAB空间,取名MYTAB,空间高为5,共分为两个页签BUTTON1/BUTTON2
19 *两个页签的功能代码分别为PUSH1/PUSH2
20
21 SELECTION-SCREEN: BEGIN OF TABBED BLOCK mytab FOR 5 LINES,
22 TAB (20) button1 USER-COMMAND push1,
23 TAB (20) button2 USER-COMMAND push2,
24 END OF BLOCK mytab.
25
26 *为TAB控件分别初始化值,应用于TEXT ELEMENT文本
27 INITIALIZATION.
28 button1 = text-010.
29 button2 = text-020.
30 mytab-prog = sy-repid.
31 mytab-dynnr = 100.
32
33 AT SELECTION-SCREEN.
34 CASE sy-ucomm.
35 WHEN ‘PUSH1‘.
36 mytab-dynnr = 100.
37 WHEN ‘PUSH2‘.
38 mytab-dynnr = 100.
39 WHEN OTHERS.
40 ENDCASE.

执行结果如下

在屏幕上创建页签

时间: 2024-10-10 08:23:12

在屏幕上创建页签的相关文章

ugui 通用页签管理器

一直是个痛点,这次解决了, ugui通用 using System.Collections; using System.Collections.Generic; using System.Linq; using UnityEngine; /// <summary> /// UGUI页签管理器 /// /// 管理器挂上UITabManager /// 页签按钮挂上UITabButton /// 页签内容挂上继承了ITabContent接口的脚本 /// 注意面板赋值 /// </summ

点击textField没有响应与在屏幕上未看到创建的视图问题(UI)

一.点击textField没有响应 (1)textField上面还有视图(如下) UITextField *tf = [[UITextField alloc] initWithFrame:CGRectMake(50, 100, 220, 40)]; tf.backgroundColor = [UIColor yellowColor]; tf.borderStyle = UITextBorderStyleRoundedRect; [self.window addSubview:tf]; [tf r

高仿富途牛牛-组件化(一)-支持页签拖拽、增删、小工具

目录 一.概述 二.效果展示 三.实现方案分析 1.第一阶段 2.第二阶段 3.第三阶段 一.概述 好久没有做业务相关的UI功能了,比较炫酷的交互效果也写的少了,最近花了2天时间写了一个简易的高仿富途牛牛组件化的功能,当然了这只是一个初步的效果,而且没有做贴图.美化等工作,但是基本的功能已经有了.本篇文章只是作为组件化的一个开始,后续还会陆续引入更多关于组件化的介绍,相信功能也会越来越丰富.除此之外,富途牛牛的一些其他高级功能也会陆续引入,不乏有k线.分时.五日.指标.自选这样的复杂功能. 自选

01_SDL_在屏幕上显示一张图片

#include "SDL/SDL.h" #include <string> //屏幕属性 const int SCREEN_WIDTH = 640; const int SCREEN_HEIGHT = 480; const int SCREEN_BPP = 32; //能被使用到的面 SDL_Surface *message = NULL; SDL_Surface *background = NULL; SDL_Surface *screen = NULL; SDL_Su

C# FINEUI 多页签(tab)中的笔记

一.FINEUI (MVC) 日期格式问题: FINEUI 日期控件从VIEW 到control 中的值传递问题(view 中的传值代码如 "txtDate1: F.ui.DatePicker1.getValue(),"  但是在control 里得到的格式 并非标准的 'yyyy-MM-dd'格式Thu Jun 01 2017 00:00:00 GMT+0800 这种带时区的字符串不可转换成日期格式 可以用Substring()  取时区前面的部分.转换成日期格式 在转换成想要的格式

使用原生js与jQuery分别实现一个简单的tab页签

tab页签通常适用于空间有限而内容较多同时兼顾页面美观度不给用户一种信息过量视觉疲劳的情形.使用面非常广,下面我们用两种方法简单实现之. 首先,构建页面元素.页签的可点击部分我们通常用列表来承载,包括ul和ol,我们这里让页签呈横向分布,所以需要使之向左浮动.而页签内容部分使用div承载即可.另外,我们需要对具有共性的元素统一控制样式和行为,所以就有了下面的dom结构: <div id="main"> <ul id="tabbar" class=&

返回上一页代码区别:

window.history.go(-1);  //返回上一页 window.history.back();  //返回上一页 replace 方法,该方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过"前进"和"后退"来访问已经被替换的URL. 语法: location.replace(URL) 在 实际应用的时候,重新刷新页面的时候,我们通常使用: location.reload() 或者是 history.go

Linux more(功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上)

more命令,功能类似 cat ,cat命令是整个文件的内容从上到下显示在屏幕上. more会以一页一页的显示方便使用者逐页阅读,而最基本的指令就是按空白键(space)就往下一页显示,按 b 键就会往回(back)一页显示,而且还有搜寻字串的功能 .more命令从前向后读取文件,因此在启动时就加载整个文件. 1.命令格式: more [-dlfpcsu ] [-num ] [+/ pattern] [+ linenum] [file ... ] 2.命令功能: more命令和cat的功能一样都

怎样在屏幕上显示多个alv

本文解说怎样在屏幕上显示多个alv. 实现这种需求关键是下面几点(举例:在屏幕上显示4个alv): 1.须要定义4个alv control 2.由于有4个alv control,于是就须要定义4个容器装这4个控件 3.为了合理布局这4个容器,就要将这4个容器嵌入另外一个splitter 容器中 4.可是splitter容器又仅仅能置入其它容器中,那么就须要再定义一个容器 总之,须要3层容器和1层控件,总共要定义6个容器和4个控件 5.最里面的容器应该是cl_gui_custom_containe