InputBox 函数本身有问题 ??(1分)

  • 主题发起人 主题发起人 张辉明
  • 开始时间 开始时间

张辉明

Unregistered / Unconfirmed
GUEST, unregistred user!
s:=InputBox('图书查询','请输入要查询的图书名。','计算机英语');

结果显示:请输入要查询的图书名。变成了:  请输入要查询的图书

难道Inputbox本身对中文支持不好??
 
没用这样的问题呀
你这样试试看
procedure TForm1.Button1Click(Sender: TObject);
begin
edit1.Text := InputBox('图书查询','请输入要查询的图书名。',edit1.Text);
end;
 
要不在句号后加几个空格[:)][:D]
 
我知道,但给分太少了
 
那你要多少分才行?我有就给!
 
可以这么说,InputBox,包括所有的控件,你只需找到InputBox的源代码,然后将加入
Font.Name='宋体';Font.size:=9;就可以,当然,也可以是你自己喜欢的字体.
 
看看inputbox的源码吧,和自己动手组装没啥区别,还不如自己来。
function InputQuery(const ACaption, APrompt: string;
var Value: string): Boolean;
var
Form: TForm;
Prompt: TLabel;
Edit: TEdit;
DialogUnits: TPoint;
ButtonTop, ButtonWidth, ButtonHeight: Integer;
begin
Result := False;
Form := TForm.Create(Application);
with Form do
try
Canvas.Font := Font;
DialogUnits := GetAveCharSize(Canvas);
BorderStyle := bsDialog;
Caption := ACaption;
ClientWidth := MulDiv(180, DialogUnits.X, 4);
Position := poScreenCenter;
Prompt := TLabel.Create(Form);
with Prompt do
begin
Parent := Form;
Caption := APrompt;
Left := MulDiv(8, DialogUnits.X, 4);
Top := MulDiv(8, DialogUnits.Y, 8);
Constraints.MaxWidth := MulDiv(164, DialogUnits.X, 4);
WordWrap := True;
end;
Edit := TEdit.Create(Form);
with Edit do
begin
Parent := Form;
Left := Prompt.Left;
Top := Prompt.Top + Prompt.Height + 5;
Width := MulDiv(164, DialogUnits.X, 4);
MaxLength := 255;
Text := Value;
SelectAll;
end;
ButtonTop := Edit.Top + Edit.Height + 15;
ButtonWidth := MulDiv(50, DialogUnits.X, 4);
ButtonHeight := MulDiv(14, DialogUnits.Y, 8);
with TButton.Create(Form) do
begin
Parent := Form;
Caption := SMsgDlgOK;
ModalResult := mrOk;
Default := True;
SetBounds(MulDiv(38, DialogUnits.X, 4), ButtonTop, ButtonWidth,
ButtonHeight);
end;
with TButton.Create(Form) do
begin
Parent := Form;
Caption := SMsgDlgCancel;
ModalResult := mrCancel;
Cancel := True;
SetBounds(MulDiv(92, DialogUnits.X, 4), Edit.Top + Edit.Height + 15,
ButtonWidth, ButtonHeight);
Form.ClientHeight := Top + Height + 13;
end;
if ShowModal = mrOk then
begin
Value := Edit.Text;
Result := True;
end;
finally
Form.Free;
end;
end;



 
接受答案了.
 
后退
顶部