2012-02-11 593 views

回答

2

创建RTF格式的许可证文本(带写字板的非常小的文件大小),并在文本输入的超级链接为纯文本,无额外的功能需要(如“http://stackoverflow.com”)。 InnoSetup将显示此URL并使其可点击。请注意,电子邮件链接无法正常工作。

想试试吗?保存整个文本写字板,保存为RTF并将其链接到InnoSetup。

荷兰

8

我知道我很晚这里...下面的代码脚本创建向导形式的左下部分的License Agreement链接标签。该标签有一个蓝色下划线字体和一个悬停的手形光标,因此它看起来和感觉像一个常见的网页链接。在其单击事件中,指定的URL在默认的Web浏览器中打开。此标签然后对除许可页面一个所有向导页面可见:

[Code] 
var 
    LicenseLinkLabel: TLabel; 

procedure LicenseLinkClick(Sender: TObject); 
var 
    ErrorCode: Integer; 
begin 
    ShellExec('', 'http://www.stackoverflow.com', '', '', SW_SHOW, ewNoWait, 
    ErrorCode); 
end; 

procedure InitializeWizard; 
begin 
    LicenseLinkLabel := TLabel.Create(WizardForm); 
    LicenseLinkLabel.Parent := WizardForm; 
    LicenseLinkLabel.Left := 8; 
    LicenseLinkLabel.Top := WizardForm.ClientHeight - 
    LicenseLinkLabel.ClientHeight - 8; 
    LicenseLinkLabel.Cursor := crHand; 
    LicenseLinkLabel.Font.Color := clBlue; 
    LicenseLinkLabel.Font.Style := [fsUnderline]; 
    LicenseLinkLabel.Caption := 'License Agreement'; 
    LicenseLinkLabel.OnClick := @LicenseLinkClick; 
end; 

procedure CurPageChanged(CurPageID: Integer); 
begin 
    LicenseLinkLabel.Visible := CurPageID <> wpLicense; 
end; 

而结果(点击放大):

Click to enlarge Click to enlarge

+0

如果这个职位回答您的问题(即使有这样的延迟:-),你可能会[[考虑接受它]](http://meta.stackexchange.com/a/5235/179541),如果没有,请不要犹豫,在这里留下评论,说明你的确切需要。谢谢! – TLama 2012-09-12 20:29:45

+0

Inno文档没有列出CurPageChanged,但我设法通过绑定OnActivate和OnNextButtonClick事件来获得显示/隐藏的TWizardPage。 – MikeKusold 2014-03-13 16:29:12

相关问题