NSIS:更改安装程序的颜色
NSIS: Changing colors of the installer
我一直在与 NSIS 合作,实验性地为我的一些东西制作安装程序。我不知道如何在安装程序上更改颜色的正确语法。我试过使用其他网站上的帮助,但他们什么也没做。有谁知道我必须使用正确的语法和 !insertmacro
来更改颜色?
编辑:另外,我不知道要 !include
和 !define
做什么才能达到这一点。我不仅想更改背景,还想更改进度条和按钮颜色。 EDIT2:我需要找到进度条和按钮的宏和数据。不仅仅是背景。
您可以使用
!define MUI_BGCOLOR "your color here"
!include MUI2.nsh
摘自 Anders
的原始答案
NSIS 尝试尽可能多地使用系统颜色。如果您使用的是现代 UI,那么您可以设置一些定义来控制颜色,但主要是针对 "wizard" 区域。
!define MUI_BGCOLOR 000000
!define MUI_TEXTCOLOR ffffff
!define MUI_LICENSEPAGE_BGCOLOR 445566
!define MUI_DIRECTORYPAGE_BGCOLOR 556677
;define MUI_STARTMENUPAGE_BGCOLOR ...
!define MUI_INSTFILESPAGE_COLORS 123456
!define MUI_INSTFILESPAGE_PROGRESSBAR colored
;define MUI_FINISHPAGE_LINK_COLOR ...
!include MUI2.nsh
...
SetCtlColors
指令可用于更改其他一些 UI 元素的颜色,但如果您想创建一个在所有内容上都使用自定义颜色的安装程序,则必须使用第三个 -派对皮肤插件,因为这是更改按钮颜色的唯一方法。
您提到重新着色按钮,这通常是不可能的。我建议您查看 UltraModernUI,其中包括皮肤。包含的 SkinnedControls 插件允许您重新设置按钮和滚动条的外观。请注意,包含的皮肤是 15 年前的现代 InstallShield 皮肤的变体,但具有很大的灵活性,并且现代平面外观很容易复制,如果那是您想要的。它还具有 MUI2 缺少的一些额外页面和其他功能。
如果您愿意为此付费,Graphical Installer(适用于 NSIS 和 Inno)具有更多换肤功能。
我一直在与 NSIS 合作,实验性地为我的一些东西制作安装程序。我不知道如何在安装程序上更改颜色的正确语法。我试过使用其他网站上的帮助,但他们什么也没做。有谁知道我必须使用正确的语法和 !insertmacro
来更改颜色?
编辑:另外,我不知道要 !include
和 !define
做什么才能达到这一点。我不仅想更改背景,还想更改进度条和按钮颜色。 EDIT2:我需要找到进度条和按钮的宏和数据。不仅仅是背景。
您可以使用
!define MUI_BGCOLOR "your color here"
!include MUI2.nsh
摘自 Anders
NSIS 尝试尽可能多地使用系统颜色。如果您使用的是现代 UI,那么您可以设置一些定义来控制颜色,但主要是针对 "wizard" 区域。
!define MUI_BGCOLOR 000000
!define MUI_TEXTCOLOR ffffff
!define MUI_LICENSEPAGE_BGCOLOR 445566
!define MUI_DIRECTORYPAGE_BGCOLOR 556677
;define MUI_STARTMENUPAGE_BGCOLOR ...
!define MUI_INSTFILESPAGE_COLORS 123456
!define MUI_INSTFILESPAGE_PROGRESSBAR colored
;define MUI_FINISHPAGE_LINK_COLOR ...
!include MUI2.nsh
...
SetCtlColors
指令可用于更改其他一些 UI 元素的颜色,但如果您想创建一个在所有内容上都使用自定义颜色的安装程序,则必须使用第三个 -派对皮肤插件,因为这是更改按钮颜色的唯一方法。
您提到重新着色按钮,这通常是不可能的。我建议您查看 UltraModernUI,其中包括皮肤。包含的 SkinnedControls 插件允许您重新设置按钮和滚动条的外观。请注意,包含的皮肤是 15 年前的现代 InstallShield 皮肤的变体,但具有很大的灵活性,并且现代平面外观很容易复制,如果那是您想要的。它还具有 MUI2 缺少的一些额外页面和其他功能。
如果您愿意为此付费,Graphical Installer(适用于 NSIS 和 Inno)具有更多换肤功能。