尝试使用多行提示符时:即
sPrompt := 'some text' + #13#10#10 + 'some more info...' + #13#10 +
'Blah, Blah' + #13#10#10 + 'What is your input?';
InputQuery 函数将字符串作为字符串数组,它根据数组中最长的字符串计算Form 的MaxWidth。
在上面的示例中,InputQuery 表单是根据字符串的长度计算的,大约为 50 个字符。虽然最长的线路只是其中的一小部分。
结果是一个非常宽的 InputQuery 框,其中显示了很多空白空间。看起来不是很专业。
当我尝试创建一个字符串数组来保存每一行时:
var saPrompt: array of string;
sInputString: String;
Begin
SetLength(saPrompt,4);
saPrompt[0] := 'some text' + #13#10#10;
saPrompt[1] := 'some more info...' + #13#10;
saPrompt[2] := 'Blah, Blah' + #13#10#10;
saPrompt[3] := 'What is your input?';
sInputString := '???';
If InputQuery('I Need Input?',saPrompt,sInputString) then
由于不存在用于获取 InputQuery 函数的这些参数的重载函数,我无法编译。我查看了 Vcl.Dialogs 单元中的 Overload InputQuery 函数,但无法使其工作。
有谁知道使用带有多行提示的 InputQuery 函数的正确语法?
我正在使用 Embarcadero RAD Studio XE2 - Delphi
提前感谢任何“有用”的回复。