2011-06-30 8 views
1

nsisインストーラの仕上げページに、とMUI_PAGE_CUSTOMFUNCTION_SHOWの仕上げページ定義関数に、MUIを使用してチェックボックスを追加しました。既存のNSIS MUI2ページをカスタマイズする

MUIの代わりにMUI2を含めると、チェックボックスは表示されません。これに関しては、MUI2とは違う何かがMUIと思われます。誰かがそれを知っているなら、私はそれについての文書を見つけることができませんでした、私は知ってもらえますか?

ありがとう

答えて

6

MUI1は歓迎のためのInstallOptionsと終了ページを使用してMUI2はnsDialogsを使用しています。

これはMUI2 readmeで文書化されています

歓迎と仕上がりページは InstallOptionsを使って実装もはや ません。代わりに、新しい nsDialogsプラグインが使用されます。 nsDialogs は、 から直接カスタムページを作成したり、 既存のページをカスタマイズしたりすることができます。

編集: nsDialogsを使用してページをカスタマイズショーのコールバックでコマンド:

var Checkbox 

Function MyFinishShow 
${NSD_CreateCheckbox} 120u 110u 100% 10u "&Something" 
Pop $Checkbox 
SetCtlColors $Checkbox "" "ffffff" 
FunctionEnd 

Function MyFinishLeave 
${NSD_GetState} $Checkbox $0 
${If} $0 <> 0 
    MessageBox mb_ok "Custom checkbox was checked..." 
${EndIf} 
FunctionEnd 

!define MUI_FINISHPAGE_RUN "calc.exe" ;See note after the code... 
!define MUI_PAGE_CUSTOMFUNCTION_SHOW MyFinishShow 
!define MUI_PAGE_CUSTOMFUNCTION_LEAVE MyFinishLeave 
!insertmacro MUI_PAGE_FINISH 

それとも、既存の仕上げページのチェックボックスを使用していない場合は、あなたが使用しなくてもcustom stuffのものを使用することができますショーコールバック...

+0

あなたのanwerに感謝します。私はMUI2でその言葉を見つけました。また、私はWinampフォーラムを参照しました。 http://forums.winamp.com/showthread.php?t=314012正確に私の質問を説明し、それはhttp://forums.winamp.com/showthread.php?threadid=310323を参照して、カスタムページを追加する仕上がりページ。しかし、上記のreadmeでは、既存のページをカスタマイズすることができます...私はそれを達成する方法を知りたいですか?ありがとう –

+1

@dia:再び、ドキュメントから "次に、インターフェイスをカスタマイズするために使用できるshow関数が呼び出されました。" – Anders

+0

素敵な答え!!!ありがとうございました –