在底图上创建的按钮和复选框对像无任何响应
导入图片作为底图, 在底图上创建的按钮和复选框对像,编译后按钮和复选框对象无任何响应 Set State 128 出几行代码,才能知道什么原因? afan 发表于 2021-12-9 10:17Set State 128
大佬,我是新手,能具体一些不? jinming-yang163 发表于 2021-12-10 09:26
大佬,我是新手,能具体一些不?
你一行代码没有,不能更具体。先学习提问的智慧吧
GUICtrlSetState($iPic, 128) jinming-yang163 发表于 2021-12-10 09:26
大佬,我是新手,能具体一些不?
A版己说得很清楚了
GUICtrlSetState(-1,128)
是新手更要把自己的代码晒出来,才能找出问题 本帖最后由 jinming-yang163 于 2021-12-10 21:36 编辑
#include <GUIConstantsEx.au3>
#include <GuiButton.au3>
#include <EditConstants.au3>
#include <ButtonConstants.au3>
#include <MsgBoxConstants.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <DirConstants.au3>
#include <Constants.au3>
Opt("WinDetectHiddenText", 1) ;检测隐藏文本
Opt("WinTitleMatchMode", 4) ;标题匹配模式高级的模式
Opt("TrayAutoPause", 0) ;单击托盘图标时脚本是否暂停 0:不暂停
Opt("TrayIconHide", 0) ;显示托盘图标
Opt("GUICloseOnESC", 0) ;按esc不退出
$sProductAppTitle = "Quite Imposing Plus 5.2 汉化版安装"
$sProductName = "“Quite Imposing Plus 5.2 汉化版”"
***此处省略了创建一些窗口和按钮的代码***
;;安装完成窗口
$FormSetupComplete = GUICreate($sProductAppTitle, 500, 350, -1, -1, $WS_CAPTION)
GUICtrlCreatePic($sSetupWizardWelcomeImage, 0, 0, 500, 300)
GUICtrlSetState(-1, 128)
GUICtrlCreateLabel("成功完成PDF拼版插件QIP的安装", 170, 20, 315, 35)
GUICtrlSetFont(-1, 14, 600, 0, "宋体")
GUICtrlSetBkColor(-1, 0xFFFFFF)
GUICtrlSetColor(-1, 0x0b3190)
GUICtrlCreateLabel("成功安装" & $sProductName & ",中文语言已设置。" & @CRLF & @CRLF & "安装向导即将启动 Adobe Acrobat应用程序,您可以第一时间来体验新安装插件的功能。" & @CRLF & "单击[完成]按钮启动 Adobe Acrobat,退出向导。", 170, 70, 315, 150)
GUICtrlSetFont(-1, 9, 100, 0, "宋体")
GUICtrlSetBkColor(-1, 0xFFFFFF)
$CheckboxLaunchAcrobat = GUICtrlCreateCheckbox("启动 Adobe Acrobat", 170, 185, 315, 14)
GUICtrlSetFont(-1, 9, 100, 0, "宋体")
GUICtrlSetBkColor(-1, 0xFFFFFF)
GUICtrlSetState(-1, $GUI_CHECKED)
$BtnSetupComplete_About = GUICtrlCreateButton("关于(&A)", 20, 315, 80, 25)
GUICtrlSetFont(-1, 9, 100, 0, "宋体")
$BtnSetupComplete_Back = GUICtrlCreateButton("< 上一步(&B)", 220, 315, 80, 25)
GUICtrlSetFont(-1, 9, 100, 0, "宋体")
GUICtrlSetState(-1, $GUI_DISABLE)
$BtnSetupComplete_OK = GUICtrlCreateButton("完成(&F) >", 300, 315, 80, 25, $BS_DEFPUSHBUTTON)
GUICtrlSetFont(-1, 9, 100, 0, "宋体")
GUICtrlSetState(-1, $GUI_FOCUS)
$BtnSetupComplete_Cancel = GUICtrlCreateButton("取消(&C)", 400, 315, 80, 25)
GUICtrlSetFont(-1, 9, 100, 0, "宋体")
GUICtrlSetState(-1, $GUI_DISABLE)
;################################### 以上是函数和窗体的代码 ###################################
GUISetState(@SW_SHOW, $FormSetupPassword) ;显示密码输入窗口
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
; 点击所有窗口右上角的关闭按钮
Case $GUI_EVENT_CLOSE
;选择“是”则退出循环结束脚本,否则继续执行脚本
$sExitSetup = "你确实要退出" & $sProductName & "安装程序吗?"
If (MsgBox(270388, $sProductAppTitle, $sExitSetup) = 6) Then
SplashOff()
GUISetState(@SW_HIDE)
ExitLoop
EndIf
** 此处省略其他窗口按钮响应事件代码**
;;;; “安装完成” 窗口的 “完成”按钮
Case $BtnSetupComplete_OK
GUISetState(@SW_HIDE, $FormSetupComplete)
If GUICtrlRead($CheckboxLaunchAcrobat) = $GUI_CHECKED Then ;勾选 “启动Acrobat”选项
SplashTextOn($sProductAppTitle, "正在启动 Adobe Acrobat,请稍候......", 350, 80, -1, -1, 33, "宋体", 9, 400)
;读入Acrobat的应用程序路径
$sAcrobatAPP = RegRead("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\Acrobat.exe", "")
Run($sAcrobatAPP) ;重新启动Adobe Acrobat
WinWaitActive("Adobe Acrobat", "", 15) ;等候15秒,如果15秒内Acrobat窗口激则清除滚屏
SplashTextOn($sProductAppTitle, "Adobe Acrobat 应用程序已启动。", 350, 80, -1, -1, 33, "宋体", 9, 400)
;WinFlash("Adobe Acrobat", "文件", 4, 500)
Sleep(1500)
SplashOff()
EndIf
ExitLoop ;跨出循环
EndSwitch
WEnd 本帖最后由 jinming-yang163 于 2021-12-10 21:46 编辑
以上代码编译后,点击复选框 “启动 Adobe Acorbat” ,没有任何响应。
jinming-yang163 发表于 2021-12-10 21:38
以上代码编译后,点击复选框 “启动 Adobe Acorbat” ,没有任何响应。
复选框在GUICtrlCreateLabel("成功安装" 的控件之内。
把复选框的座标往下调:
$CheckboxLaunchAcrobat = GUICtrlCreateCheckbox("启动 Adobe Acrobat", 170, 225, 315, 14) jinming-yang163 发表于 2021-12-10 21:38
以上代码编译后,点击复选框 “启动 Adobe Acorbat” ,没有任何响应。
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <ButtonConstants.au3>
$FormSetupComplete = GUICreate("Quite Imposing Plus 5.2 汉化版安装", 500, 350, -1, -1);, $WS_CAPTION)
GUISetBkColor(0xfbfcfd);0x007180)
GUICtrlCreatePic(@ScriptDir & "/back0.jpg", 0, 0, 500, 300)
GUICtrlSetState(-1, 128)
GUICtrlCreateLabel("成功完成PDF拼版插件QIP的安装", 170, 20, 315, 35)
GUICtrlSetFont(-1, 14, 600, 0, "宋体")
GUICtrlSetBkColor(-1, 0xfbfcfd);0xFFFFFF)
GUICtrlSetColor(-1, 0x0b3190)
;GUICtrlSetBkColor(-1, -2)
$Files ="成功安装 Quite Imposing Plus 5.2 汉化版 ,中文语言已设置。" & @CRLF & @CRLF & "安装向导即将启动 Adobe Acrobat应用程序,您可以第一时间来体验新安装插件的功能。" & @CRLF & "单击[完成]按钮启动 Adobe Acrobat,退出向导。"
GUICtrlCreateLabel($Files , 170, 70, 315, 115)
GUICtrlSetFont(-1, 9, 100, 0, "宋体")
GUICtrlSetBkColor(-1, 0xfbfcfd);0xFFFFFF)
GUICtrlSetColor(-1, 0x0b3190)
;GUICtrlSetBkColor(-1, -2)
$CheckboxLaunchAcrobat = GUICtrlCreateCheckbox("启动 Adobe Acrobat", 170, 185, 315, 14)
GUICtrlSetFont(-1, 9, 100, 0, "宋体")
GUICtrlSetBkColor(-1, 0xfbfcfd);0xFFFFFF)
GUICtrlSetColor(-1, 0x0b3190)
GUICtrlSetState(-1, $GUI_CHECKED)
$BtnSetupComplete_About = GUICtrlCreateButton("关于(&A)", 20, 315, 80, 25)
GUICtrlSetFont(-1, 9, 100, 0, "宋体")
$BtnSetupComplete_Back = GUICtrlCreateButton("< 上一步(&B)", 220, 315, 80, 25)
GUICtrlSetFont(-1, 9, 100, 0, "宋体")
GUICtrlSetState(-1, $GUI_DISABLE)
$BtnSetupComplete_OK = GUICtrlCreateButton("完成(&F) >", 300, 315, 80, 25, $BS_DEFPUSHBUTTON)
GUICtrlSetFont(-1, 9, 100, 0, "宋体")
GUICtrlSetState(-1, $GUI_FOCUS)
$BtnSetupComplete_Cancel = GUICtrlCreateButton("取消(&C)", 400, 315, 80, 25)
GUICtrlSetFont(-1, 9, 100, 0, "宋体")
GUICtrlSetState(-1, $GUI_DISABLE)
GUISetState(@SW_SHOW, $FormSetupComplete)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
; 点击所有窗口右上角的关闭按钮
Case $GUI_EVENT_CLOSE, $BtnSetupComplete_Cancel
Exit
Case $BtnSetupComplete_OK
MsgBox(0, "", "你点了完成")
Case $CheckboxLaunchAcrobat
If GUICtrlRead($CheckboxLaunchAcrobat) = $GUI_CHECKED Then
MsgBox(0, "", "你点了启动Acrobat", 1)
GUICtrlSetState($BtnSetupComplete_Cancel, 128)
GUICtrlSetState($BtnSetupComplete_Back, 128)
Else
MsgBox(0, "", "你点了启动Acrobat", 1)
GUICtrlSetState($BtnSetupComplete_Cancel, 64)
GUICtrlSetState($BtnSetupComplete_Back, 64)
EndIf
Case $BtnSetupComplete_About
MsgBox(0, "", "你点了关于")
EndSwitch
WEnd
感谢大佬,问题解决了
请请教一个问题,程序换肤后,文本对象有背景颜色,怎么解决啊,能设置背景色透明吗? jinming-yang163 发表于 2021-12-11 19:49
感谢大佬,问题解决了
请请教一个问题,程序换肤后,文本对象有背景颜色,怎么解决啊,能设置背景色透明 ...
GUICtrlSetBkColor(-1, -2)
11楼代码里就有,你没发现? 窗口控件的样式很多,多学习就能掌握
问题解决了,谢谢大佬的热心帮助
页:
[1]