1. 程式人生 > >INNO setup打包的一段介面美化的code端程式碼

INNO setup打包的一段介面美化的code端程式碼





[Code]
var
  DetailList: TNewListBox;
  newFileNameLabel: TNewStaticText;
  LastDir: string;


procedure InitializeWizard();
begin
//介面修改
WizardForm.WizardSmallBitmapImage.left:=426;
WizardForm.taskslist.color:=clWindow;
WizardForm.innerpage.color:=clWindow;
WizardForm.readymemo.color:=clWindow;
WizardForm.PAGENAMELABEL.Font.Color:= clGreen;


WizardForm.PAGEDESCRIPTIONLABEL.Font.Color:= clGreen;
 WizardForm.WelcomeLabel2.Caption := '現在將在你的電腦上安裝 {#MyAppName} V{#MyAppVersion} ' + #13#10 +
         + #13#10 +
         '建議你在繼續之前關閉所有其它應用程式。' + #13#10 +
         '' + #13#10 +
         '單擊“下一步”繼續,或單擊“取消”退';
WizardForm.WELCOMELABEL1.Font.Color:= clGreen;
WizardForm.WELCOMELABEL1.top:= 31;


WizardForm.WELCOMELABEL2.top:= 91;
WizardForm.Color:= clwindow;
WizardForm.Bevel1.Left:=0;
WizardForm.Bevel1.top:=0;
WizardForm.Bevel1.width:=0;
 WizardForm.Bevel.Left:=0;
WizardForm.Bevel.top:=0;
WizardForm.selectdirbitmapimage.visible:=false;
WizardForm.selectgroupbitmapimage.visible:=false;
WizardForm.selectdirlabel.left:=0;
WizardForm.selectstartmenufolderlabel.left:=0;
WizardForm.Bevel.width:=0;
WizardForm.PageDescriptionLabel.Top:=40;


//頁面修改完畢


 


//顯示細節
  DetailList:= TNewListBox.Create(WizardForm);
  DetailList.Parent := WizardForm.InstallingPage;
  DetailList.Left := ScaleX(0);
  DetailList.Top := ScaleY(70);
  DetailList.Width := ScaleX(417);
  DetailList.Height := ScaleY(153);
  newFileNameLabel:= TNewStaticText.Create(WizardForm)      // 建立 FileNameLabel 的替代
  newFileNameLabel.Parent := WizardForm.InstallingPage;
  newFileNameLabel.Top := WizardForm.FileNameLabel.Top;
  newFileNameLabel.Left := WizardForm.FileNameLabel.Left;
  newFileNameLabel.Width := WizardForm.FileNameLabel.Width;
  WizardForm.FileNameLabel.Visible := false;               // 隱藏本來的 FileNameLabel


  LastDir:= '';
end;
procedure ChangeDisplay;
var
  dn, fn: string;
  pct: Extended;
begin
  pct := (WizardForm.ProgressGauge.Position-WizardForm.ProgressGauge.Min)/(WizardForm.ProgressGauge.Max-WizardForm.ProgressGauge.Min)*100;
  dn:= ExpandConstant(ExtractFileDir(CurrentFileName));
  fn:= ExtractFileName(CurrentFileName);


  WizardForm.StatusLabel.Caption:= '輸出目錄: ' + dn;
  newFileNameLabel.Caption:= '抽取: ' + fn + ' (' + IntToStr(Round(pct)) + '% 已完成)';
  if dn <> LastDir then
    begin
      DetailList.Items.Append('輸出目錄: ' + dn);
      LastDir:= dn;
    end;
  DetailList.Items.Append('抽取: ' + fn + ' (' + IntToStr(Round(pct)) + '% 已完成)');
  DetailList.ItemIndex := DetailList.Items.Count - 1;
end;


//顯示細節完畢

相關推薦

INNO setup打包介面美化code程式碼

[Code] var   DetailList: TNewListBox;   newFileNameLabel: TNewStaticText;   LastDir: string; procedure InitializeWizard(); begin //介面修改

Inno Setup打包帶有MSI檔案的程式

1 [Files] 2 Source: "C:\Documents and Settings\Administrator\桌面\4\abc.exe"; DestDir: "{app}"; Flags: ignoreversion 3 Source: "C:\Documents and Settin

第一次使用Inno Setup打包程式初記

在平時的工作中,需要將自己寫的程式碼或者完成的程式打包成安裝包供使用者安裝使用。所以首先我將自己對打包和安裝這倆個過程進行簡單,粗略的理解。 打包: 1,壓縮程式執行所需要的檔案 2,編寫安裝程式整個過程的指令碼 安裝 1,解壓縮 2,執行前面編寫的

inno setup打包工具指令碼

; 指令碼由 Inno Setup 指令碼嚮導 生成! ; 有關建立 Inno Setup 指令碼檔案的詳細資料請查閱幫助文件! [Setup] ; 注: AppId的值為單獨標識該應用程式。 ; 不要為其他安裝程式使用相同的AppId值。 ; (生成新的GUID,點選 工

Inno setup 打包教程

簡述: inno setup 是較常用且簡單的軟體打包工具。 1、安裝並開啟 inno setup 軟體 ① 執行環境 系統:Windows 7 軟體:inno setu

Inno setup 打包,實現多語言安裝

第一步:新增對話方塊 [Setup] ShowLanguageDialog=yes 第二步:設定語言型別 [Languages] Name: "en"; MessagesFile: "compiler:Languages\English.isl" Name: "chin

Inno Setup打包遇到管理員許可權問題解決

Inno Setup打包的程式安裝完成後執行失敗,這個是因為許可權不夠,我們可以通過下面的辦法解決:   找到Inno Setup安裝目錄下的SetupLdr.e32檔案,然後用Resource

Inno Setup打包的安裝程式在Vista/Win7上自動提示需要管理員許可權的方法

首先,在 [Setup]段  PrivilegesRequired=admin  然後找到INNO安裝目錄下的SetupLdr.e32檔案(其實就是一個exe程式),使用管理員許可權執行用ResHacker修改: 將程式中的Manifest內的: <reque

Inno Setup 打包exe設定程式開機自動啟動

第一種方法:不修改登錄檔 原理是將程式的快捷方式新增到計算機"啟動"資料夾,win7可以 win10沒試過 [Tasks] Name: "startupicon"; Description: "開機啟動"; GroupDescription: "{cm:AdditionalI

inno setup 打包工具介紹

使 用 筆 記 1、Inno Setup 是什麼? Inno Setup 是一個免費的 Windows 安裝程式製作軟體。第一次發表是在 1997 年,Inno Setup 今天在功能設定和穩定性上的競爭力可能已經超過一些商業的安裝程式製作軟體。 關鍵功能:

Inno Setup 打包工具總結

最近打包用到了Inno setup,在這個過程中容易犯一些低階錯誤,特別寫出來已提醒自己1.打包資料夾打包檔案按照嚮導來一般沒什麼問題,但資料夾就不一樣了。嚮導生成的打包資料夾的程式碼如下:Source: "D:MyProject/XX/*"; DestDir: "{app}"; Flags: ignorev

INNO SETUP 打包程式 在WIN7下 報CREATE PROCESS 錯誤的許可權問題解決方法

首先,在 [Setup]段  PrivilegesRequired=admin  然後找到INNO安裝目錄下的SetupLdr.e32檔案(其實就是一個exe程式),將程式中的Manifest內的 <requestedExecutionLevel level="a

inno setup打包安裝程式中讓“是否建立快捷方式”預設為“打鉤”的方法

用inno setup的嚮導建立一個安裝檔案,在選擇“是否建立快捷方式”時,系統預設是“不打鉤”的,如何讓它是打勾的呢?很簡單,修改指令碼下面這段: [Tasks] Name: "desktopicon"; Description: "{cm:CreateDesktopIc

C++中的類所佔記憶體空間總結(其中有關於成員函式處於程式碼的解釋) 2011-12-9 16:16

#include<iostream.h> class a {}; class b{}; class c:public a{ virtual void fun()=0; }; class d:public b,public c{}; int main() { cout<&

尋求ASP+JS倒計時執行程式碼

倒計時的網上找了許多,可是都不是我想要的 我現在弄的就是: 資料中有一個變數儲存了該商品到期時間 ExpiryTime 樣式為:2011-02-22 18:18:18 我想做的就是弄個JS倒計時程式碼,引數通過asp來傳遞 如果已經超時,那麼自動跳轉頁面。 有高人做過麼 謝

php加密解密的程式碼

<?php $key = "This is supposed to be a secret key !!!"; function keyED($txt,$encrypt_key) { $encrypt_key = md5($encrypt_key); $ctr=0; $tmp = ""; for ($i

用springboot 搭建套簡易的前後程式碼

(1)先把spring 基礎專案創建出來。參考文章(點選以下連結): (2)前後端分離,為解決跨域問題,寫一個過濾器設定header。注意,springboot 增加過濾器需要在啟動類增加註解 @ServletComponentScan @WebFilter(fil

Inno setup 介面設計入門()環境準備

前言 本套教程為進階而寫的,最終構建一個完整的炫酷的介面,包括介面,安裝,登錄檔以及常見的安裝功能實現。需要你知道基本的inno setup知識,比如說inno setup是幹什麼的,會基本的指令碼建立。本教程不需要你掌握Pascal語法,使用的是通俗易懂的話語教學以及圖文

inno setup 安裝介面進度條控制

用inno setup製作安裝包會發現一個問題。 預設安裝時候的進度條只是檔案提取的進度。 當檔案提取完成了進度條就已經100% 這時候如果你[Run] 裡面執行的東西比較多,就會顯得安裝進度 100%之後一直卡在那裡,卡了半天才

VB 程式碼自動執行圖形介面程式 傳送按鍵指令

用於ETL流程中, 有不支援命令列, 只能GUI互動的程式要實現自動化呼叫 可以參考下面這段VB. 啟動了程式, 還在5秒後自動按了一下回車鍵. Dim Shell Set Shell=WScript.CreateObject("WScript.Shell"