我想使用nsis创建一个自定义页面。只是文字,在不同的高度,甚至还有一些图像。与oracle相似:
从docs at "Custom Pages"开始,这是创建自定义页面的方式:
;--------------------------------
;Pages
Function CustomPageFunction
!insertmacro MUI_HEADER_TEXT "TITLE" "SUBTITLE"
FunctionEnd
!insertmacro MUI_PAGE_WELCOME
Page custom CustomPageFunction
我正在寻找有关如何创建非常基本的自定义安装程序页面的指南,因为不幸的是,MUI_PAGE_WELCOME之后没有显示带有“ TITLE”和“ SUBTITLE”的新页面,就好像需要添加额外的说明一样。我想念什么?ž
设置图片的更新:
var Image
var ImageHandle
Function CustomPageFunction
; !insertmacro MUI_HEADER_TEXT "TITLE" "SUBTITLE"
nsDialogs::Create 1044
Pop $0
${NSD_CreateBitmap} 0 0 100% 100% ""
Pop $Image
${NSD_SetImage} $Image "C:\Users\User\Desktop\TrickyWays\test.png" $ImageHandle
${NSD_CreateLabel} 0 0 100% 40% "Hello, welcome to nsDialogs!"
Pop $0
nsDialogs::Show
${NSD_FreeImage} $ImageHandle
FunctionEnd
答案 0 :(得分:1)
您链接到的文档仅讨论与MUI标头文本有关的自定义页面。函数中有一个...,您应该在其中放置实际的自定义页面代码。我将尝试修复文档的那部分。
自定义页面需要一个插件,最受欢迎的页面可能是nsDialogs。不调用插件的自定义页面将自动跳过。
!include nsDialogs.nsh
!include mui2.nsh
Function myPageCreate
!insertmacro MUI_HEADER_TEXT "TITLE" "SUBTITLE"
nsDialogs::Create 1018
Pop $0
${If} $0 == error
Abort
${EndIf}
${NSD_CreateLabel} 0 0 100% 12u "Hello, welcome to nsDialogs!"
Pop $0
${NSD_CreateText} 0 13u 100% -13u "Type something here..."
Pop $0
nsDialogs::Show
FunctionEnd
!insertmacro MUI_PAGE_WELCOME
Page custom myPageCreate
!insertmacro MUI_PAGE_INSTFILES
!insertmacro MUI_LANGUAGE English