You can use CreateOutputMsgMemoPage to create a page with the box turned on. You can then adjust the size and add the consent / disagree fields.
; Shows a new license page for the LGPL with the usual accept/don't acccept options [Code] var LGPLPage: TOutputMsgMemoWizardPage; LGPLAccept: TNewRadioButton; LGPLRefuse: TNewRadioButton; procedure LGPLPageActivate(Sender: TWizardPage); forward; procedure LGPLAcceptClick(Sender: TObject); forward; procedure LGPL_InitializeWizard(); var LGPLText: AnsiString; begin // Create the page LGPLPage := CreateOutputMsgMemoPage(wpLicense, SetupMessage(msgWizardLicense), SetupMessage(msgLicenseLabel), CustomMessage('LGPLHeader'), ''); // Adjust the memo and add the confirm/refuse options LGPLPage.RichEditViewer.Height := ScaleY(148); LGPLAccept := TNewRadioButton.Create(LGPLPage); LGPLAccept.Left := LGPLPage.RichEditViewer.Left; LGPLAccept.Top := LGPLPage.Surface.ClientHeight - ScaleY(41); LGPLAccept.Width := LGPLPage.RichEditViewer.Width; LGPLAccept.Parent := LGPLPage.Surface; LGPLAccept.Caption := SetupMessage(msgLicenseAccepted); LGPLRefuse := TNewRadioButton.Create(LGPLPage); LGPLRefuse.Left := LGPLPage.RichEditViewer.Left; LGPLRefuse.Top := LGPLPage.Surface.ClientHeight - ScaleY(21); LGPLRefuse.Width := LGPLPage.RichEditViewer.Width; LGPLRefuse.Parent := LGPLPage.Surface; LGPLRefuse.Caption := SetupMessage(msgLicenseNotAccepted); // Set the states and event handlers LGPLPage.OnActivate := @LGPLPageActivate; LGPLAccept.OnClick := @LGPLAcceptClick; LGPLRefuse.OnClick := @LGPLAcceptClick; LGPLRefuse.Checked := true; // Load the LGPL text into the new page ExtractTemporaryFile('lgpl-3.0.txt'); LoadStringFromFile(ExpandConstant('{tmp}/lgpl-3.0.txt'), LGPLText); LGPLPage.RichEditViewer.RTFText := LGPLText; end; procedure LGPLPageActivate(Sender: TWizardPage); begin WizardForm.NextButton.Enabled := LGPLAccept.Checked; end; procedure LGPLAcceptClick(Sender: TObject); begin WizardForm.NextButton.Enabled := LGPLAccept.Checked; end; [Files] Source: {
source share