1、标准写法(单个):
procedure TForm7.Button1Click(Sender: TObject); var strResult:string; begin if InputQuery('请输入密码:', '密码:', strResult) then begin caption:= strResult; end; end;
2、扩展写法(多个):
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、密码写法(多个):
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;
4InputQuery 的高级用法(可用于替代密码修改窗口)
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;