Delphi 中,InputQuery 函数的妙用  
官方Delphi 学习QQ群: 682628230(三千人)
频道

Delphi 中,InputQuery 函数的妙用


1、标准写法(单个):


tulater_202151181857.png

procedure TForm7.Button1Click(Sender: TObject);

var  strResult:string;

begin

if InputQuery('请输入密码:', '密码:', strResult) then begin

    caption:=  strResult;

 end;


end;


 


2、扩展写法(多个):


tulater_202151181857.png

procedure TForm7.FormCreate(Sender: TObject);

var strResult: array of string ;

begin

setLength(strResult,2);

if InputQuery('请输入密码:', ['密码:', '重复密码:'], strResult) then begin 

   caption:=  strResult[0];


end;

end;


 


3、密码写法(多个):


tulater_202151181857.png

procedure TForm7.FormCreate(Sender: TObject);

var strResult: array of string ;

begin

setLength(strResult,2);

if InputQuery('请输入密码:', [Chr(9) + '密码:', Chr(9) + '重复密码:'], strResult) then begin

   caption:=  strResult[0];


end;

end;



4.InputQuery 的高级用法(可用于替代密码修改窗口)

tulater_202151181857.png


procedure ShowErrorMsg(Amsg:string);

begin

  Application.MessageBox(PChar(Amsg), 'error', MB_OK);

  abort;

end;


procedure TFrm_Main.Btn_1Click(Sender: TObject);

var

  ss:array of string;

begin

  SetLength(ss,3);

  if InputQuery('密码修改',[Chr(0)+'旧 密 码',Chr(0)+'新 密 码',Chr(0)+'确认密码'],ss,

    function (const Values: array of string): Boolean

    begin

      Result := False;

      if Values[0]<>'123' then ShowErrorMsg('旧密码不正确');

      if Values[1]<>Values[2] then ShowErrorMsg('两次密码不同');

      Result := True;

     end)

  then begin

    ShowMessage('请牢记您的新密码:'+SS[1]);

  end;

end;


 



推荐分享
图文皆来源于网络,内容仅做公益性分享,版权归原作者所有,如有侵权请告知删除!
 

Copyright © 2014 DelphiW.com 开发 源码 文档 技巧 All Rights Reserved
晋ICP备14006235号-8 晋公网安备 14108102000087号

执行时间: 0.037747859954834 seconds