Innosetup中在安装界面左下角添加超链接

在程序的安装界面左下角加上超链接,如下图:

1. 新建一个标签,这里使用的控件是TNewStaticText ,完整的方法是

//该方法传入两个参数:
//1. ParentForm:将这个URLLabel添加到那个界面上,这里添加到整个安装WizardForm去
//2. CancelButton:使用WizardForm的CancelButton来辅助这个URLLabel作相对定位
procedure CreateURLLable(ParentForm: TSetupForm; CancelButton: TNewButton);
var
      URLLabel: TNewStaticText;
begin
     URLLabel := TNweStaticText.Create(ParentForm);//这个URLLabel实际即使一个文本标签,将它添加到WizardForm中去
     URLLabel.Caption := 'www.innosetup.com';//设定显示的文本
     URLLabel.Cursor := crHand;//鼠标移上去时显示为手形
     URLLabel.OnClick := @URLLabelOnClick;//绑定点击事件
     URLLabel.Parent := ParentForm;

     URLLabel.Font.Style := URLLabel.Font.Style + [fsUnderline];//文件显示下划线      
     URLLabel.Font.Color := clBlue;
     URLLabel.Top := CancelButton.Top;//直接使用CancelButton的Top来定位
     URLLabel.Left := ScaleX(20);//与左边相距20个像素
end;

2. 为标签URLLabel绑定点击事件(这个方法的定义必须在CreateURLLabel()之前)

procedure URLLabelOnClick(Sender: TObject);
var
     ErrorCode: Integer;
begin
     ShellExecAsOriginalUser('open', 'http://www.innosetup.com', '', '', SW_SHOWNORMAL, ewNoWait, ErrorCode);
end;

3. 在procedure InitializeWizard()方法中调用 CreateURLLabel()方法

//该方法是innosetup自带的方法,作用是初始化安装界面WizardForm
procedure InitializeWizard();
begin
       //.....其他代码
       CreateURLLabel(WizardForm, WizardForm.CancelButton);
end;

  

  

posted @ 2015-10-20 19:28  一菲聪天  阅读(1013)  评论(0编辑  收藏  举报