2016-05-19 11 views
-1

NSISのMUI_STARTMENUPAGE_TEXT_TOPの背景色を変更するにはどうすればよいですか?NSISのMUI_STARTMENUPAGE_TEXT_TOPの背景色

関数SetCtlColorが機能していません。

私はItemIDを見つけようとしましたが、正しいIDが見つかりませんでした。

答えて

0
!include MUI.nsh 
Var MySMDir 
!define MUI_STARTMENUPAGE_TEXT_TOP "Blah blah" 
!define MUI_PAGE_CUSTOMFUNCTION_SHOW OnStartmenuPageShow 
!insertmacro MUI_PAGE_STARTMENU SMD $MySMDir 
!insertmacro MUI_PAGE_INSTFILES 
!insertmacro MUI_LANGUAGE "English" 

Function OnStartmenuPageShow 
FindWindow $0 "#32770" "" $HWNDPARENT ; Find the inner dialog 
GetDlgItem $0 $0 0x3EB 

/* Uncomment to use MUI specific ways of finding the control 
!if "${MUI_SYSVERSION}" >= 2.0 
GetDlgItem $0 $mui.StartMenuPage 0x3EB 
!else 
GetDlgItem $0 $MUI_HWND 0x3EB 
!endif */ 

SetCtlColors $0 774411 aaccff 
FunctionEnd 
+0

私のプロジェクト要件に従って、バージョン1.8を使用しており、ウェルカムページを中止しています。 $ MUI_HWNDは未定義です。 ウェルカムページを有効にしようとしましたが、動作しませんでした。 質問:「0x3EB」というIDはどうやって見つかりますか?ようこそページを中止するときに$ MUI_HWNDの値を取得する他の方法はありますか? – Shrinidhi

+0

$ MUI_HWNDは、startmenuのshow関数で有効と書かれています!あなたのコードを投稿することは助けになりますが、一般的な方法を使用するために私の答えを編集します... – Anders

+0

私はウルトラモダンなUI .. UMUI.nsh ..を使用していて、ID 0x3EBの色を適用していません上記の方法を用いる。私はStartMenu dllについて少し読んで、カスタムページの色を変更するためのID 1003を持っています。 残念ながら、私はまだMUI_PAGE_STARTMENUのSHOW機能を変更できません。 – Shrinidhi