Delphi Inputbox,InputQuery用法
Delphi :InputQuery,InputBox用法及區(qū)別
function InputQuery(const ACaption, APrompt: string; var Value: string): Boolean;
InputQuery返回值為是否點(diǎn)了OK 輸入的字符串放在了變量Value中
function InputBox(const ACaption, APrompt, ADefault: string): string;
inputBox返回值是字符串,也就是輸入的字符串
procedure TForm1.Button1Click(Sender: TObject);
var
s:string;
begin
//點(diǎn)擊了OK按鈕后,則
if InputQuery('標(biāo)題','提示字符',s) then
begin
if s<>'' then //如果輸入不為空則
showmessage(s);
end;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
s:string;
begin
s:=InputBox('標(biāo)題','提示字符',s);
if s<>'' then
showmessage(s);
end;
Delphi通過(guò)自定義消息自定義Inputbox,使其支持掩碼并修改按鈕的caption
首先自定義一個(gè)消息ID
const
InputBoxMessage = WM_USER + 200;
接著聲明并實(shí)現(xiàn)該消息的處理過(guò)程
procedure InputBoxSetPasswordChar(var Msg: TMessage); message InputBoxMessage;//聲明
procedure Tfrm.InputBoxSetPasswordChar(var Msg: TMessage);//實(shí)現(xiàn)
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('請(qǐng)?jiān)O(shè)置解鎖密碼','請(qǐng)?jiān)O(shè)置解鎖密碼(不能為空):','');
總結(jié)
以上是生活随笔為你收集整理的Delphi Inputbox,InputQuery用法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 走进小作坊(十)----长尾效应
- 下一篇: A. Fraction