Inno Setup - menyelaraskan tombol kustom dengan tombol Batal

Aug 19 2020

Saya punya masalah untuk menyetel tombol pada ukuran atas yang sama seperti tombol Batal saat saya menggunakan WizardSizePercent = 150di Setupbagian ini.

Ini kode saya:

AboutButton := TNewButton.Create(WizardForm);
AboutButton.Parent := WizardForm;
AboutButton.Left := WizardForm.CancelButton.Left;
AboutButton.Top := WizardForm.CancelButton.Top;
AboutButton.Width := WizardForm.CancelButton.Width;
AboutButton.Height := WizardForm.CancelButton.Height;

Saya rasa Inno Setup tidak memperhatikan WizardSizePercent, karena hanya menggunakan WizardFormukuran biasa .

Jawaban

1 MartinPrikryl Aug 19 2020 at 14:14

Saya berasumsi bahwa kode Anda ada InitializeWizard. Fungsi acara itu terjadi sebelum WizardSizePercentditerapkan. Jika Anda ingin tombol Anda disejajarkan dengan benar saat jendela wizard berubah ukuran, baik karena WizardSizePercentatau WizardResizable, Anda perlu mengikuti dokumentasinya:

Gunakan Anchorsdan KeepSizeYproperti untuk menambahkan dukungan penuh untuk WizardResizabledan WizardSizePercentke semua kontrol kustom Anda, halaman panduan kustom, dan TSetupFormformulir jika Anda punya. Lihat contoh script CodeClasses.iss sebagai contoh.

Terutama:

AboutButton.Anchors := WizardForm.CancelButton.Anchors;

CancelButton.Anchorsadalah [akRight, akBottom]. Jika tombol "Tentang" Anda harus rata kiri, gunakan:

AboutButton.Anchors := [akLeft, akBottom];