设为首页 |收藏本站 |切换到宽版
 找回密码

NSIS中文论坛

查看: 161|回复: 2
收起左侧

[求助] 为何选择内容那个部分没有其效果呢

[复制链接]
  • TA的每日心情
    无聊
    2020-9-4 00:45
  • 签到天数: 29 天

    [LV.4]偶尔看看III

    1

    主题

    4

    帖子

    479

    积分

    积分
    479
    发表于 2020-8-2 23:36:23 | 显示全部楼层 |阅读模式
    file:///D:/%E5%BE%AE%E4%BF%A1%E6%88%AA%E5%9B%BE_20200802231833.png
    如上图,其他部分都正常,但是这个部分不论是选还是没有选择,都是没有起作用,为什么?
    代码如下:

    Function Page.1
      GetDlgItem $0 $HWNDPARENT 1
      ShowWindow $0 ${SW_HIDE}
      GetDlgItem $0 $HWNDPARENT 2
      ShowWindow $0 ${SW_HIDE}
      GetDlgItem $0 $HWNDPARENT 3
      ShowWindow $0 ${SW_HIDE}
      GetDlgItem $0 $HWNDPARENT 1990
      ShowWindow $0 ${SW_HIDE}
      GetDlgItem $0 $HWNDPARENT 1991
      ShowWindow $0 ${SW_HIDE}
      GetDlgItem $0 $HWNDPARENT 1992
      ShowWindow $0 ${SW_HIDE}

      nsDialogs::Create 1044
      Pop $0
      ${If} $0 == error
        Abort
      ${EndIf}
      SetCtlColors $0 "" transparent  ;背景设成透明

      ${NSW_SetWindowSize} $0 510 238 ;改变Page大小

      ;关闭按钮
      ${NSD_CreateButton} 469 2 39 21 ""
      Pop $0
      SkinBtn::Set /IMGID=$PLUGINSDIR\close.bmp $0
      GetFunctionAddress $3 onClickcancel
      SkinBtn:nClick $0 $3

      ;Checkbox2
      nsDialogs::CreateControl BUTTON 0x40000000|0x10000000|0x04000000|0x00010000 0 380 196 15 15 ""
      Pop $Checkbox2
      StrCpy $1 $Checkbox2
      Call SkinBtn_Checkbox2
      GetFunctionAddress $3 OnClick_Checkbox2
      SkinBtn:nClick $1 $3
      StrCpy $Bool_Checkbox2 1
            SetCtlColors $Checkbox2 "ffffff" transparent
            ${NSD_SetState} $Checkbox2 ${BST_CHECKED}
            ;ShowWindow $Checkbox2 ${SW_HIDE}                  ;当你不使用该选项时,可以隐藏

            ${NSD_CreateLabel} 395 197 200 15 "使用美化版关联图标"
            Pop $Checkbox_State2
      SetCtlColors $Checkbox_State2 "f58229" transparent ;前景色,背景设成透明
      ${NSD_OnClick} $Checkbox_State2 onCheckbox2
      ;ShowWindow $Checkbox_State2 ${SW_HIDE}            ;当你不使用该选项时,可以隐藏

            ;安装路径
      ${NSD_CreateText} 80 152 369 20 "$INSTDIR"
      Pop $Txt_dir
      SetCtlColors $Txt_dir "f58228" "ffffff" ;背景设成透明
      CreateFont $1 "Arial" "10" "500"
      SendMessage $Txt_dir ${WM_SETFONT} $1 0
      ${NSD_AddStyle} $Txt_dir ${ES_LEFT}

      ;更改路径按钮
      ${NSD_CreateButton} 457 152 36 20  ""
            Pop $btn_dir
            SkinBtn::Set /IMGID=$PLUGINSDIR\browse.bmp $btn_dir
            GetFunctionAddress $3 onButtonClickSelectPath
      SkinBtn:nClick $btn_dir $3
            ;ShowWindow $btn_dir ${SW_HIDE}

      ;安装按钮
      ${NSD_CreateButton} 156 183 198 42 ""
      Pop $btn_in
      SkinBtn::Set /IMGID=$PLUGINSDIR\install.bmp $btn_in
      GetFunctionAddress $3 onClickinst
      SkinBtn:nClick $btn_in $3

      ;贴背景大图
      ${NSD_CreateBitmap} 0 0 100% 100% ""
      Pop $BGImage
      ${NSD_SetImage} $BGImage $PLUGINSDIR\Pwelcome.bmp $ImageHandle

      GetFunctionAddress $0 onGUICallback
      WndProc:nCallback $BGImage $0 ;处理无边框窗体移动
      nsDialogs::Show
      ${NSD_FreeImage} $ImageHandle
    FunctionEnd

    ;存储3个选项状态
    Function Page.1leave
      ${NSD_GetState} $Checkbox2 $Checkbox2_State
    FunctionEnd

            # Checkbox2

            Function OnClick_Checkbox2
                      ${IF} $Bool_Checkbox2 == 1
                      IntOp $Bool_Checkbox2 $Bool_Checkbox2 - 1
                      StrCpy $1 $Checkbox2
                      Call SkinBtn_UnCheckbox2
                    ${ELSE}
                      IntOp $Bool_Checkbox2 $Bool_Checkbox2 + 1
                      StrCpy $1 $Checkbox2
                      Call SkinBtn_Checkbox2
                    ${EndIf}
            FunctionEnd

            Function SkinBtn_Checkbox2
                      SkinBtn::Set /IMGID=$PLUGINSDIR\choiced.bmp $1
            FunctionEnd

            Function SkinBtn_UnCheckbox2
                      SkinBtn::Set /IMGID=$PLUGINSDIR\choice.bmp $1
            FunctionEnd

    Section Main
      SetDetailsPrint textonly
      DetailPrint "正在安装 ${PRODUCT_NAME} ..."
      SetDetailsPrint None
      FindProcDLL::FindProc ".exe"
      StrCmp $R0 1 0 Next
      KillProcDLL::KillProc ".exe"
    Next:
      SetShellVarContext all
      SetOutPath "$INSTDIR"
      File /r "*"

      ${NSD_GetState} $Checkbox2_State $0
      ${If} $Checkbox2_State == 1
      SetDetailsPrint textonly
      DetailPrint "正在安装美化版关联图标..."
      SetDetailsPrint None
      Delete "$INSTDIR\Icons.dll"
      SetOutPath "$INSTDIR"
      File "Icons_MH.dll"
      Rename "$INSTDIR\Icons_MH.dll" "$INSTDIR\Icons.dll"
      ${EndIf}
      SetAutoClose true
    SectionEnd

    Function onCheckbox2
             ${NSD_GetState} $Checkbox2 $0

      ${If} $0 == ${BST_CHECKED}
                     ${NSD_SetState} $Checkbox2 ${BST_UNCHECKED}
             ${Else}
                     ${NSD_SetState} $Checkbox2 ${BST_CHECKED}
             ${EndIf}
    FunctionEnd

    微信截图_20200802231833.png
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2020-9-4 00:45
  • 签到天数: 29 天

    [LV.4]偶尔看看III

    1

    主题

    4

    帖子

    479

    积分

    积分
    479
     楼主| 发表于 2020-8-6 20:40:42 | 显示全部楼层
    看来论坛都没人了,更不用说人气什么的了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-9-4 00:45
  • 签到天数: 29 天

    [LV.4]偶尔看看III

    1

    主题

    4

    帖子

    479

    积分

    积分
    479
     楼主| 发表于 2020-8-6 20:43:21 | 显示全部楼层
    想起当年刚刚混迹圈子的时候,那个时候的梦想吧www.dreams8.com了
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Archiver|手机版|小黑屋|联系我们|鲁ICP备12005273号 |  

    © 2015-2020 nsisfans.com.   All Rights Reserved.

    快速回复 返回顶部 返回列表