zoukankan      html  css  js  c++  java
  • Delphi Inputbox,InputQuery用法

    Delphi :InputQuery,InputBox用法及区别

    function InputQuery(const ACaption, APrompt: string; var Value: string): Boolean; 
    InputQuery返回值为是否点了OK 输入的字符串放在了变量Value中 

    function InputBox(const ACaption, APrompt, ADefault: string): string; 
    inputBox返回值是字符串,也就是输入的字符串

    procedure TForm1.Button1Click(Sender: TObject);
    var
    s:string;
    begin
    //点击了OK按钮后,则
    if InputQuery('标题','提示字符',s) then
    begin
    if s<>'' then //如果输入不为空则
       showmessage(s);
    end;

    end;

    procedure TForm1.Button2Click(Sender: TObject);
    var
    s:string;
    begin
    s:=InputBox('标题','提示字符',s);
    if s<>'' then
    showmessage(s);
    end;

    Delphi通过自定义消息自定义Inputbox,使其支持掩码并修改按钮的caption

    首先自定义一个消息ID

    const
    InputBoxMessage = WM_USER + 200;

    接着声明并实现该消息的处理过程

    procedure InputBoxSetPasswordChar(var Msg: TMessage); message InputBoxMessage;//声明

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

    使用自定义后的InputBox

    PostMessage(Handle, InputBoxMessage, 0, 0);
    InputBox('请设置解锁密码','请设置解锁密码(不能为空):','');

  • 相关阅读:
    javascript之面向对象学习笔记03
    javascript之面向对象学习笔记02
    javascript之面向对象学习笔记01
    记第一次用Linux搭建LAMP环境
    C#随机数
    Android简单的TXT文件存储
    关于Android的ListView一点使用方法
    Android与C#的socket通讯
    Android调用WebService
    并发编程之进程、线程、同步锁 -1
  • 原文地址:https://www.cnblogs.com/bestlove/p/6536679.html
Copyright © 2011-2022 走看看