根據你的第三張照片,你可以使用自定義形式和定位您的控件表單的中心。
function CreateMyCustomUserDialog(): Boolean;
var
Form: TSetupForm;
OKButton, CancelButton: TNewButton;
Label1: TLabel;
Edit1: TEdit;
begin
Form := CreateCustomForm();
try
Form.ClientWidth := ScaleX(256);
Form.ClientHeight := ScaleY(256);
Form.Caption := 'User Information';
Form.CenterInsideControl(WizardForm, true);
OKButton := TNewButton.Create(Form);
OKButton.Parent := Form;
OKButton.Width := ScaleX(75);
OKButton.Height := ScaleY(23);
OKButton.Left := Form.ClientWidth - ScaleX(75 + 6 + 75 + 10);
OKButton.Top := Form.ClientHeight - ScaleY(23 + 10);
OKButton.Caption := 'OK';
OKButton.ModalResult := mrOk;
Label1 := TLabel.Create(Form);
Label1.Parent := Form;
Label1.Alignment := taCenter;
Label1.Caption := 'Username:';
Label1.Width := Form.ClientWidth;
Label1.Height := ScaleY(23);
Label1.Top := 30;
Edit1 := TEdit.Create(Form);
Edit1.Parent := Form;
Edit1.Top := 50;
Edit1.Width := 100;
Edit1.Left := (Form.ClientWidth - Edit1.Width)/2;
Edit1.Text := 'Admin';
CancelButton := TNewButton.Create(Form);
CancelButton.Parent := Form;
CancelButton.Width := ScaleX(75);
CancelButton.Height := ScaleY(23);
CancelButton.Left := Form.ClientWidth - ScaleX(75 + 10);
CancelButton.Top := Form.ClientHeight - ScaleY(23 + 10);
CancelButton.Caption := 'Cancel';
CancelButton.ModalResult := mrCancel;
CancelButton.Cancel := True;
Form.ActiveControl := OKButton;
if Form.ShowModal() = mrOk then
MsgBox('You clicked OK.', mbInformation, MB_OK);
finally
Form.Free();
end;
end;
不,這是不可能的。對我來說這看起來像一個可怕的主意。 –
[查看圖片](http://i.imgur.com/iJaU4cz.png)。 – Thebig1825
這就是我的意思是可怕的想法。遵循Windows GUI風格。不要發明自己的。 –