Я хочу показать содержимое, как показано на рисунке ниже, на этапе установки установщика... Я использовал memo для показа содержимого... но memo не подходит для управления.. тогда он выглядит как текстовое поле, если пользователь ставит фокус в поле memo... см. ниже изображение.. когда пользователь подходит к этому шагу, выбирается первое поле memo...
Управление отображением многострочного содержимого в установщике inno setup
Ответ 1
Используйте TLabel
или TNewStaticText
компонент (TNewStaticText
кажется предпочтительным внутри InnoSetup) и установить его следующим образом:
- свойство
WordWrap
дляTrue
- свойство
AutoSize
дляFalse
Затем просто растяните компоненты в нужные позиции, и текст будет соответствовать этим границам, как показано в этом примере:
[Setup]
AppName=My Program
AppVersion=1.5
DefaultDirName={pf}\My Program
[Code]
const
LoremIpsum =
'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Proin mauris ' +
'lorem, ullamcorper sit amet tincidunt ac, varius at ante. Aenean pretium, ' +
'tortor non congue pharetra, ante urna consectetur mi, vitae congue arcu est ' +
'eleifend nisl.';
procedure InitializeWizard;
var
CustomPage: TWizardPage;
StandardDescLabel: TLabel;
StandardRadioButton: TNewRadioButton;
AdvancedDescLabel: TLabel;
AdvancedRadioButton: TNewRadioButton;
begin
CustomPage := CreateCustomPage(wpWelcome, 'Installation type', '');
StandardRadioButton := TNewRadioButton.Create(WizardForm);
StandardRadioButton.Parent := CustomPage.Surface;
StandardRadioButton.Checked := True;
StandardRadioButton.Top := 16;
StandardRadioButton.Width := CustomPage.SurfaceWidth;
StandardRadioButton.Font.Style := [fsBold];
StandardRadioButton.Font.Size := 9;
StandardRadioButton.Caption := 'Standard Installation'
StandardDescLabel := TLabel.Create(WizardForm);
StandardDescLabel.Parent := CustomPage.Surface;
StandardDescLabel.Left := 8;
StandardDescLabel.Top := StandardRadioButton.Top + StandardRadioButton.Height + 8;
StandardDescLabel.Width := CustomPage.SurfaceWidth;
StandardDescLabel.Height := 40;
StandardDescLabel.AutoSize := False;
StandardDescLabel.Wordwrap := True;
StandardDescLabel.Caption := LoremIpsum;
AdvancedRadioButton := TNewRadioButton.Create(WizardForm);
AdvancedRadioButton.Parent := CustomPage.Surface;
AdvancedRadioButton.Top := StandardDescLabel.Top + StandardDescLabel.Height + 16;
AdvancedRadioButton.Width := CustomPage.SurfaceWidth;
AdvancedRadioButton.Font.Style := [fsBold];
AdvancedRadioButton.Font.Size := 9;
AdvancedRadioButton.Caption := 'Advanced Installation'
AdvancedDescLabel := TLabel.Create(WizardForm);
AdvancedDescLabel.Parent := CustomPage.Surface;
AdvancedDescLabel.Left := 8;
AdvancedDescLabel.Top := AdvancedRadioButton.Top + AdvancedRadioButton.Height + 8;
AdvancedDescLabel.Width := CustomPage.SurfaceWidth;
AdvancedDescLabel.Height := 40;
AdvancedDescLabel.AutoSize := False;
AdvancedDescLabel.Wordwrap := True;
AdvancedDescLabel.Caption := LoremIpsum;
end;
И результат: