正式会员享受无限制浏览网站功能和高速网盘下载,赶快加入本站吧!
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- [Setup]
- AppName=My Program
- AppVersion=1.5
- DefaultDirName={pf}My Program
- DefaultGroupName=My Program
- [Files]
- Source: "开始位图.bmp"; Flags: dontcopy
- Source: "结束位图.bmp"; Flags: dontcopy
- Source: "waterctrl.dll"; Flags: dontcopy
- Source: "MyProg.exe"; DestDir: "{app}"
- [Run]
- Filename: "{app}MyProg.exe"; Description: "运行我的程序"; Flags: postinstall
- [code]
- var
- bmp: TBitmap;
- bmp1: TBitmap;
- CheckBox1: TCheckBox;
- function enablewater(ParentWnd: HWND; Left, Top: integer; Bmp: HBITMAP; WaterRadius, WaterHeight: integer): BOOL;
- external 'enablewater@files:waterctrl.dll stdcall';
- function waterblob(x, y: integer; radius, height: integer): BOOL;
- external 'waterblob@files:waterctrl.dll stdcall';
- function flattenwater(): BOOL; external 'flattenwater@files:waterctrl.dll stdcall';
- function disablewater(): BOOL; external 'disablewater@files:waterctrl.dll stdcall';
- function setwaterparent(ParentWnd: HWND): BOOL; external 'setwaterparent@files:waterctrl.dll stdcall';
- procedure InitializeWizard();
- begin
- ExtractTemporaryFile('开始位图.bmp');
- ExtractTemporaryFile('结束位图.bmp');
- bmp := TBitmap.create;
- bmp.LoadFromFile(ExpandConstant('{tmp}开始位图.bmp'));
- bmp1 := TBitmap.create;
- bmp1.LoadFromFile(ExpandConstant('{tmp}结束位图.bmp'));
- Wizardform.WelcomeLabel1.Visible:= false; // 屏蔽安装向导页面上面的文字
- Wizardform.WelcomeLabel2.Visible:= false; // 屏蔽安装向导页面上面的文字
- end;
- procedure CurPageChanged(CurPageID: Integer);
- begin
- if CurPageID = wpWelcome then
- begin
- enablewater(WizardForm.WelcomePage.Handle, 0, 0, bmp.Handle, 3, 50);
- waterblob(70, 198, 10, 1000);
- end
- else
- if CurPageID = wpFinished then
- begin
- waterblob(70, 198, 10, 1000);
- // 不显示原有文字
- Wizardform.FinishedHeadingLabel.Visible:= false;
- Wizardform.FinishedLabel.Visible:= false;
- Wizardform.RunList.Visible:= false;
- // 新建勾选项 1
- CheckBox1 := TCheckBox.Create(WizardForm);
- CheckBox1.Parent := WizardForm.FinishedPage;
- CheckBox1.Left := ScaleX(180); // 位置要根据背景图像的情况进行调整
- CheckBox1.Top := ScaleY(220); // 位置要根据背景图像的情况进行调整
- CheckBox1.Width := ScaleX(100); // 宽度要根据文字多少进行调整
- CheckBox1.Height := ScaleY(15);
- CheckBox1.TabOrder := 0;
- CheckBox1.State := Wizardform.RunList.Checked[0];
- CheckBox1.Caption:= Wizardform.RunList.Items[0];
- end
- else
- flattenwater();
- end;
- procedure DeinitializeSetup();
- begin
- disablewater();
- bmp.Free;
- bmp1.Free;
- end;
- function NextButtonClick(CurPageID : Integer): Boolean;
- begin
- result:= true;
- if CurPageID=wpFinished then
- begin
- wizardform.RunList.Checked[0] := checkbox1.Checked;
- end;
- if CurPageID=wpReady then
- begin
- disablewater; // 关闭水波
- enablewater(WizardForm.FinishedPage.Handle, 0, 0, bmp1.Handle, 3, 50); //新的水波
- end;
- end;
复制代码
|