加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

Delphi InputBox进行密码输入?

发布时间:2020-12-15 04:29:32 所属栏目:大数据 来源:网络整理
导读:输入框: answer:=Inputbox('a','b','c'); 工作很好,但是我正在寻找一个蒙版的人,就像一个密码框,你只看到小星星,而不是打字符. 解决方法 您可以将Windows消息发送到由InputBox创建的编辑控件,该控件将标记用于输入密码的编辑控件.代码如下从 http://www.swi
输入框:
answer:=Inputbox('a','b','c');

工作很好,但是我正在寻找一个蒙版的人,就像一个密码框,你只看到小星星,而不是打字符.

解决方法

您可以将Windows消息发送到由InputBox创建的编辑控件,该控件将标记用于输入密码的编辑控件.代码如下从 http://www.swissdelphicenter.ch/en/showcode.php?id=1208:
const
   InputBoxMessage = WM_USER + 200;

type
   TForm1 = class(TForm)
     Button1: TButton;
     procedure Button1Click(Sender: TObject);
   private
     procedure InputBoxSetPasswordChar(var Msg: TMessage); message InputBoxMessage;
   public
   end;

var
   Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.InputBoxSetPasswordChar(var Msg: TMessage);
var
   hInputForm,hEdit,hButton: HWND;
begin
   hInputForm := Screen.Forms[0].Handle;
   if (hInputForm <> 0) then
   begin
     hEdit := FindWindowEx(hInputForm,'TEdit',nil);
     {
       // Change button text:
       hButton := FindWindowEx(hInputForm,'TButton',nil);
       SendMessage(hButton,WM_SETTEXT,Integer(PChar('Cancel')));
     }
     SendMessage(hEdit,EM_SETPASSWORDCHAR,Ord('*'),0);
   end;
end;

procedure TForm1.Button1Click(Sender: TObject);
var
   InputString: string;
begin
   PostMessage(Handle,InputBoxMessage,0);
   InputString := InputBox('Input Box','Please Enter a Password','');
end;

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读