ABAP制作密码输入框
【转自 http://blog.csdn.net/saphome/article/details/6956911】
这几天做一个系统维护的程序,需要用户输入用户名和密码登录。可怎样实现输入密码显示星号的框呢?在其它语言中简单的选那个文本框控件作为 “Password”框显示就OK了(一般会有单行、密码和多行供选)。可在ABAP中,把I/O字段属性查了个遍,没找见类似的属性,郁闷!
网上一搜,前人已经实现了。一看,更郁闷!居然是设置“不可见”属性!!(原以为选上他控件会消失呢!)写在这里,留个备份,也给需要的朋友作个参考。
下面分别介绍不同界面编程的具体实现方法:
(1)选择屏幕(Selection-Screen)中实现密码框:
假设选择屏幕中有如下声明:
PARAMETERS: txt_pass type string.
“txt_pass“是要接收密码的字段,则在选择屏幕的输出事件中加入如下代码,修改这个字段“不可见”:
AT SELECTION-SCREEN OUTPUT.
loop at screen.
if screen-name = 'TXT_PASS'.
screen-invisible = '1'.
modify screen.
endif.
endloop.
经过上面修改,txt_pass在界面上将显示成带星号的文本域。
(2)在屏幕(Screen)中实现密码框:
与选择屏幕上面一样,还是设置“不可见”属性,只是更简单(不用写代码了)。
假设在屏幕设计器上放了个名叫“txt_pass”的I/O域来接收密码输入,则双击这个字段,在属性窗口下面的“显示”页勾选“不可见”(如右图所示),激活,OK!
总结:
(1)SAP这个属性搞的变态(不过想一下,也有道理);
(2)自己以后可不能想当然了,要注重动手实践。
(3)上面密码数据类型我使用了string,SAP数据字典中还提供了个叫“XUNCODE”的文本元素专门用于密码数据类型,可以使用它。
ABAP制作密码输入框的更多相关文章
- ABAP简单表维护的制作
为了知识的积累,特作了个简单的表维护. 因为自己之前做dynpro程序的时候建了一个Tree node的表,所以就不在此重复.(在表的交付和维护页签中标的属性要是‘允许标准表维护的’) 直接Alt+U ...
- ABAP 表格控制(Table Control)和步循环
表格控制(Table Control)和步循环 1.两个标准Demo: SAPMTZ60,SAPMTZ61 2.简介 3.建立Table Control程序的基本流程 4.使用步循环 5.表格 ...
- 实例:ABAP Tree Control 使用与ALV Grid对象关联
Tree Control 是最常用的Windows控件之一,在其他语言中成为"Tree View"等,ABAP的 Tree Contiol 能实现类似的功能. 本文主要介绍一下内容 ...
- CONTROLS: <> TYPE TABLEVIEW USING SCREEN<>.在 ABAP/4 中声明表格 控制
在 ABAP/4 中声明表格 控制 在屏幕中使 用表格控制 时,必须在 ABAP/4 程序中同时 声明表格控 制结构和表 格控制字段 . 例如: TABLES: SFLIGHT. CONTROLS ...
- ABAP开发相关事务代码
事务代码 事务描述 事务代码 事务描述 SE37 ABAP/4函数编辑器 BAPI BAPI 浏览器 SE38 ABAP编辑器 LSMW 数据导入工具 SE39 ABAP分屏编辑器 PFCG 权限管理 ...
- ABAP术语-ABAP Workbench
ABAP Workbench 原文:http://www.cnblogs.com/qiangsheng/archive/2007/12/10/989037.html Integrated graphi ...
- Delphi制作QQ自动登录器源码
Delphi制作QQ自动登录器源码 http://www.cnblogs.com/sunsoft/archive/2011/02/25/1964967.html 以TM2009为例,检查了一下,未登 ...
- ABAP常用事务码
开发----------------------------------------------- SE51 屏幕制作 SE91 MESSAGE OBJECT SE80 对象浏览器(可以建开发类 ...
- 我用ABAP做过的那些无聊的事情
国庆大假马上就要来临了,我们聊点轻松的话题,关于假期. Jerry的成都同事李贝宁(Li Ben), <SAP成都研究院李三郎:SCP Application Router简介>的作者,有 ...
随机推荐
- iOS block用作属性封装代码
@property (copy, nonatomic) void (^actionBlock)(); @property (copy, nonatomic) void (^actionWithPapa ...
- include file与jsp:include 的区别
<%include file="a.jsp"%>静态包含,先加入再编译,就是在编译的时候将a.jsp的代码加入进来在编译,只会生成一个servlet文件,而且不同a ...
- Vue笔记五
十二.过滤器(filter) 示例代码: <template> <div id="app"> {{ msg | capitalize }} </div ...
- WebGL 启动载入触发更新流程分析
WebGL 启动载入触发更新流程分析 太阳火神的漂亮人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载 ...
- 【BIEE】04_当维度表中的维不存在事实表中,需要展示所有维度并且数据类展示为0
有时候,我们往往会存在这样的需求 例如:事实表的数据如下 EMP_FACT表示事实表,DIM_LEVEL是维度表 预期效果:(根据员工信息,分析各等级员工工资与员工个数) 我们在BIEE报表中新建报表 ...
- 隔行换色table
<style type="text/css"> table { margin: 0 auto; width: 600px; } table { border: 1px ...
- 哇哦!恍然大悟般的“share”功能的实现!
有一个问题一直困扰着我,也是我一直没有时间去了解和学习的,那就是前端(移动端)实现分享到微信.QQ好友.QQ空间.新浪微博等等平台的功能实现,虽然之前有做过,但是都是上一个领导自己写好的,我直接拿来用 ...
- html5 的a标签是可以拨电话的,通过其Href属性来实现
<a href="tel:18700000000">点击给我打电话吧!</a> 注: 1.<a href="tel:18750000000& ...
- Android开发之Conversion to Dalvik format failed问题解决
[2014-4-21 21:28:06 - Dex Loader] Unable to execute dex: java.nio.BufferOverflowException. Check the ...
- nginx 直接返回状态码
server { listen 80; server_name service.aaa.com; location / { add_header Content-Type "text/pla ...