Control for showing multiline content in inno set up installer

I want to show the content like in below image in installation step of installer...i have used memo for showing the content..but memo is not appropriate control..as then it looks like a textbox if user puts focus on the memo field... see below image.. when user comes to this step,the first memo field is selected...

Answers


Use either TLabel or TNewStaticText component (the TNewStaticText seems to be preferred inside of InnoSetup) and set it the following:

  • the WordWrap property to True
  • the AutoSize property to False

Then just stretch the components into your desired positions and the text will fit to that bounds, just like shown in this example:

[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;

And the result:


Need Your Help

Abstract class in Java - creating objects

java oop object abstract-class

I'm writing a code in Java using abstract classes for the first time and I have a problem. I have a list (array) of users, each of them is an object of userClass. I have created an abstract class '

JQGrid Filter Toolbar not filtering rows when using a Formatter on a column

jquery-ui jquery jqgrid jqgrid-formatter

So in a current app, I have to use a custom Formatter on a couple rows in my jqGrid. All these do is take a few fields from my ajax call, concat them into one, and place that into a row.