【转自 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”的文本元素专门用于密码数据类型,可以使用它。

最新文章

  1. iOS 直播-闪光灯的使用
  2. 【CSS 杂记】
  3. 黄聪:C#带cookie模拟登录百度
  4. Shader Overview
  5. contenteditable
  6. PLSQL_性能优化系列13_Oracle Index Rebuild索引重建
  7. hdu5514-Frogs(容斥原理)好题
  8. openfire+spark+smack实现即时通讯
  9. 标准I/O之实现细节
  10. kendo ui中grid页面参数问题
  11. c/c++ 浮点型处理
  12. jmeter问题处理随笔1 - 自动遍历用例(一次)
  13. .NET Core 使用RabbitMQ
  14. Zabbix服务网页报错汇总
  15. C#中扩展方法的使用
  16. python 测试登录接口只返回response200的问题
  17. 腾讯云 COS 对象存储使用
  18. Bad owner or permissions on .ssh/config的解决
  19. sgu 108 Self-numbers 2
  20. Ionic入门八:头部与底部

热门文章

  1. Angular 学习笔记——run
  2. 雷锋沙龙 ppt 演讲内容分享(xss,流量劫持的利用)
  3. mongoDB - 插入数据
  4. vuex mapMutations 使用
  5. 安装Linux centos 时编辑选项
  6. 基于React的贪吃蛇游戏的设计与实现
  7. Burp Suite基本用法
  8. mongoDB 特别指令用法
  9. 转 WCF WebService区别
  10. Python基础之初识递归