inno-setup – 如何在Inno Setup安装程序中更改向导大小(宽度和
Inno Setup设置向导大小是固定的,但我想更改向导设置大小并更改一些项目,包括图像和…
解决方法
没有神奇的方法可以使向导页面更大.它们专为特定尺寸设计.如果你想让它们更大,你必须逐页,逐个控制并仔细决定如何为新尺寸布局它们.
以下代码只是一个示例,您可能希望选择布局中的其他更改. procedure ShiftDown(Control: TControl; DeltaY: Integer); begin Control.Top := Control.Top + DeltaY; end; procedure ShiftRight(Control: TControl; DeltaX: Integer); begin Control.Left := Control.Left + DeltaX; end; procedure ShiftDownAndRight(Control: TControl; DeltaX,DeltaY: Integer); begin ShiftDown(Control,DeltaY); ShiftRight(Control,DeltaX); end; procedure GrowDown(Control: TControl; DeltaY: Integer); begin Control.Height := Control.Height + DeltaY; end; procedure GrowRight(Control: TControl; DeltaX: Integer); begin Control.Width := Control.Width + DeltaX; end; procedure GrowRightAndDown(Control: TControl; DeltaX,DeltaY: Integer); begin GrowRight(Control,DeltaX); GrowDown(Control,DeltaY); end; procedure GrowRightAndShiftDown(Control: TControl; DeltaX,DeltaX); ShiftDown(Control,DeltaY); end; procedure GrowWizard(DeltaX,DeltaY: Integer); begin GrowRightAndDown(WizardForm,DeltaX,DeltaY); with WizardForm do begin GrowRightAndShiftDown(Bevel,DeltaY); ShiftDownAndRight(CancelButton,DeltaY); ShiftDownAndRight(NextButton,DeltaY); ShiftDownAndRight(BackButton,DeltaY); GrowRightAndDown(OuterNotebook,DeltaY); GrowRight(BeveledLabel,DeltaX); { WelcomePage } GrowDown(WizardBitmapImage,DeltaY); GrowRight(WelcomeLabel2,DeltaX); GrowRight(WelcomeLabel1,DeltaX); { InnerPage } GrowRight(Bevel1,DeltaX); GrowRightAndDown(InnerNotebook,DeltaY); { LicensePage } ShiftDown(LicenseNotAcceptedRadio,DeltaY); ShiftDown(LicenseAcceptedRadio,DeltaY); GrowRightAndDown(LicenseMemo,DeltaY); GrowRight(LicenseLabel1,DeltaX); { SelectDirPage } GrowRightAndShiftDown(DiskSpaceLabel,DeltaY); ShiftRight(DirBrowseButton,DeltaX); GrowRight(DirEdit,DeltaX); GrowRight(SelectDirBrowseLabel,DeltaX); GrowRight(SelectDirLabel,DeltaX); { SelectComponentsPage } GrowRightAndShiftDown(ComponentsDiskSpaceLabel,DeltaY); GrowRightAndDown(ComponentsList,DeltaY); GrowRight(TypesCombo,DeltaX); GrowRight(SelectComponentsLabel,DeltaX); { SelectTasksPage } GrowRightAndDown(TasksList,DeltaY); GrowRight(SelectTasksLabel,DeltaX); { ReadyPage } GrowRightAndDown(ReadyMemo,DeltaY); GrowRight(ReadyLabel,DeltaX); { InstallingPage } GrowRight(FilenameLabel,DeltaX); GrowRight(StatusLabel,DeltaX); GrowRight(ProgressGauge,DeltaX); { MainPanel } GrowRight(MainPanel,DeltaX); ShiftRight(WizardSmallBitmapImage,DeltaX); GrowRight(PageDescriptionLabel,DeltaX); GrowRight(PageNameLabel,DeltaX); { FinishedPage } GrowDown(WizardBitmapImage2,DeltaY); GrowRight(RunList,DeltaX); GrowRight(FinishedLabel,DeltaX); GrowRight(FinishedHeadingLabel,DeltaX); end; end; 使用InitializeWizard事件函数(或其他地方)中的GrowWizard函数,将宽度和高度更改为参数: procedure InitializeWizard(); begin GrowWizard(ScaleX(100),ScaleY(80)); end; 该代码负责以下页面: >欢迎页面 >许可页面 > SelectDirPage > SelectComponentsPage > SelectTasksPage > ReadyPage > InstallingPage > FinishedPage 其他不太常见的页面留给读者练习: > PasswordPage 类似的问题: > How to display a larger license box in an InnoSetup installer? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |