NSIS:更改安装程序的颜色

时间:2020-03-06 00:51:46

标签: nsis

我一直在与NSIS合作,以实验方式为我的某些产品安装程序。我不知道如何在安装程序中更改颜色的正确语法。我尝试在其他网站上使用帮助,但它们什么也没做。有谁知道正确的语法和我必须使用!insertmacro才能更改颜色? 编辑:另外,我不知道要!include!define要做什么。我不仅要更改背景,还要更改进度栏和按钮的颜色。 EDIT2:我需要找到进度条和按钮的宏和数据。不只是背景。

3 个答案:

答案 0 :(得分:0)

您可以使用

!define MUI_BGCOLOR "your color here"
!include MUI2.nsh

来自Anders here

的原始答案

答案 1 :(得分:0)

NSIS尝试尽可能使用系统颜色。如果您使用的是Modern UI,则可以设置几个定义来控制颜色,但大部分仅用于“向导”区域。

!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元素的颜色,但是如果您要创建一个在所有内容上都使用自定义颜色的安装程序,则必须使用第3方皮肤插件之一,因为这是更改按钮颜色的唯一方法。

答案 2 :(得分:0)

您提到了重新着色按钮,这通常是不可能的。建议您查看UltraModernUI,其中包括皮肤。随附的SkinnedControls插件可让您重新设置按钮和滚动条的外观。请注意,其中包含的外观是15年前安装的InstallShield的外观的变体,但是具有很大的灵活性,并且如果要这样做,则很容易复制现代的平面外观。它还具有MUI2缺少的一些额外页面和其他功能。

如果您愿意为此付费,Graphical Installer(适用于NSIS和Inno)具有更多的蒙皮功能。