问题
I want to create a new About button at the bottom left corner of all the pages like wpWelcome
, wpSelectTasks
, wpInstalling
etc;
that will show some message if it is clicked. Message should close if user presses "OK". The button should show the full word "About" not like "Abou..."
I have checked CodeClasses.iss
file in Inno Setup, but I could not understand which piece of code I should copy, which should not.
I have already seen these two post:
- Adding a help button to an InnoSetup wizard page
- INNO Setup: "About" button position
But they are not what I exactly want.
So please anyone help.
回答1:
Here is a simplified, inlined version of the minimum code necessary to do what you've asked for:
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
[Code]
procedure AboutButtonOnClick(Sender: TObject);
begin
MsgBox('This is the about message!', mbInformation, mb_Ok);
end;
procedure InitializeWizard;
var
AboutButton: TNewButton;
begin
{ create an instance of the button and assign it to the local variable AboutButton }
AboutButton := TNewButton.Create(WizardForm);
{ set the parent to the just created button control }
AboutButton.Parent := WizardForm;
{ adjust the position to the created button control; it gets the horizontal indent }
{ by the right indent of the Cancel button; the vertical position as well as width }
{ and height are the same as the Cancel button has }
AboutButton.Left := WizardForm.ClientWidth - WizardForm.CancelButton.Left -
WizardForm.CancelButton.Width;
AboutButton.Top := WizardForm.CancelButton.Top;
AboutButton.Width := WizardForm.CancelButton.Width;
AboutButton.Height := WizardForm.CancelButton.Height;
{ set its caption }
AboutButton.Caption := '&About';
{ and assign the AboutButtonOnClick method to the OnClick event of the button }
AboutButton.OnClick := @AboutButtonOnClick;
end;
来源:https://stackoverflow.com/questions/30867416/how-to-create-new-about-button-in-inno-setup