找回密码
 加入
搜索
查看: 5568|回复: 11

[GUI管理] GUI窗口只有在点过之后才出边框,还是没解决(已解决)

  [复制链接]
发表于 2011-10-10 15:43:11 | 显示全部楼层 |阅读模式
本帖最后由 iori2882 于 2011-10-11 15:26 编辑

刚运行的时候如下图 注意TP1和TP2下面的框~~~ 实际上也是有框的 就是很浅



                               然后鼠标在上下2个框各点一下 才变成



happytc 给出的解决办法是把调用皮肤那行放在GUISetState(@SW_SHOW)之后 ,这样是可以了 但是按钮的效果消失了

附上代码 麻烦大家帮忙再看看 我试过了 实在没感觉哪有问题
#include <ButtonConstants.au3>
#include <DateTimeConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>
#include <StaticConstants.au3>
#include <TabConstants.au3>
#include <WindowsConstants.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Array.au3>
#region ### START Koda GUI section ### Form=
OnAutoItExitRegister("Quit")
$Form1 = GUICreate("Form1", 344, 230, 382, 138)
Dim $dll
$bf = "vista.skf"
_SkinGUI("SkinCrafterDll.dll", $bf, $Form1)
$Tab1 = GUICtrlCreateTab(0, 0, 329, 193)
$TabSheet1 = GUICtrlCreateTabItem("TabSheet1")
$Input1 = GUICtrlCreateInput("", 16, 64, 121, 21)
$Input2 = GUICtrlCreateInput("", 16, 120, 121, 21)
$Label1 = GUICtrlCreateLabel("TP1", 56, 40, 52, 17)
$Label2 = GUICtrlCreateLabel("TP2", 56, 96, 52, 17)
$TabSheet2 = GUICtrlCreateTabItem("TabSheet2")
$TabSheet3 = GUICtrlCreateTabItem("TabSheet3")
$TabSheet4 = GUICtrlCreateTabItem("TabSheet4")
$TabSheet5 = GUICtrlCreateTabItem("TabSheet5")
GUICtrlCreateTabItem("")
$Date1 = GUICtrlCreateDate("2011/10/10 11:05:2", 192, 200, 138, 21)
$Progress1 = GUICtrlCreateProgress(16, 200, 134, 17)
$Button1 = GUICtrlCreateButton("确定", 152, 64, 59, 25)
$Button2 = GUICtrlCreateButton("确定", 152, 120, 59, 25)
GUISetState(@SW_SHOW)
#endregion ### END Koda GUI section ###
Func jiaoshi()
        TrayTip("如何使用", "", 5)
EndFunc   ;==>jiaoshi
;===================================================================================================================================


Func bumen();===================================================================================================================================
        TrayTip("如何使用", "", 5)
EndFunc   ;==>bumen
;================================================================================================================================================


While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        ExitLoop
                Case $Button1
                        jiaoshi()
                Case $Button2
                        bumen()
                        
        EndSwitch
WEnd


Func _SkinGUI($SkincrafterDll, $SkincrafterSkin, $Handle)
        $dll = DllOpen($SkincrafterDll)
        DllCall($dll, "int:cdecl", "InitLicenKeys", "wstr", "1", "wstr", "", "wstr", "1@1.com", "wstr", "1")
        DllCall($dll, "int:cdecl", "InitDecoration", "int", 1)
        DllCall($dll, "int:cdecl", "LoadSkinFromFile", "wstr", $SkincrafterSkin)
        DllCall($dll, "int:cdecl", "DecorateAs", "int", $Handle, "int", 25)
        DllCall($dll, "int:cdecl", "ApplySkin")
EndFunc   ;==>_SkinGUI



Func Quit()
        GUISetState(@SW_HIDE)
        DllCall($dll, "int:cdecl", "DeInitDecoration")
        DllCall($dll, "int:cdecl", "RemoveSkin")
        DllClose($dll)
        ;DirRemove(@AppDataDir&"\skin",1)
        Exit
EndFunc   ;==>Quit
这个附件里的东西放在脚本同一目录

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×
发表于 2011-10-10 16:35:47 | 显示全部楼层
光看图片好象是界面太窄了,先调大些看看
发表于 2011-10-10 16:37:42 | 显示全部楼层
晕  又出问题了  为什么要说又呢?
 楼主| 发表于 2011-10-10 17:36:16 | 显示全部楼层
光看图片好象是界面太窄了,先调大些看看
netegg 发表于 2011-10-10 16:35


把_SkinGUI("SkinCrafterDll.dll", $bf, $Form1)放到 GUISetState(@SW_SHOW)

后面 就正常了~我调整界面 好像不是那回事
 楼主| 发表于 2011-10-10 17:37:24 | 显示全部楼层
晕  又出问题了  为什么要说又呢?
jj119120 发表于 2011-10-10 16:37


我一个小时前 以为解决了 修改主题已解决

一个小时后又发现问题了 帖子到已解决问题区拿不出来了

所以就是又了
 楼主| 发表于 2011-10-11 11:02:45 | 显示全部楼层
额 麻烦帮看一下吧 是不是分页标签上 又建立了 输入框的原因?

顶一下~
 楼主| 发表于 2011-10-11 12:40:50 | 显示全部楼层
没人回答肯定是我的问题有毛病 或者 下载我的附件需要钱?????麻烦帮我看下 扣钱的话 我给您评分补上
下面的界面就能正常显示,但不是我设计的窗口  还需2个文件和他同一目录 在一楼附件里了
#include <ButtonConstants.au3>
#include <DateTimeConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>
#include <StaticConstants.au3>
#include <TabConstants.au3>
#include <WindowsConstants.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Array.au3>
#region ### START Koda GUI section ### Form=
OnAutoItExitRegister("Quit")
Dim $dll
$bf="vista.skf"
$Form1 = GUICreate("皮肤例子", 345, 184, 313, 309)
_SkinGUI("SkinCrafterDll.dll", $bf, $Form1)
$Group1 = GUICtrlCreateGroup("基本", 8, 8, 321, 129)
$Combo1 = GUICtrlCreateCombo("选择皮肤", 24, 40, 105, 25)
GUICtrlSetData($Combo1,$bf)
$Input1 = GUICtrlCreateInput("内容", 24, 80, 97, 21)
$Checkbox1 = GUICtrlCreateCheckbox("哈哈", 152, 32, 45, 25)
$Radio1 = GUICtrlCreateRadio("嘻嘻", 152, 72, 45, 25)
$List1 = GUICtrlCreateList("", 216, 32, 81, 84)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Progress1 = GUICtrlCreateProgress(8, 154, 241, 10)
$Button1 = GUICtrlCreateButton("退出", 272, 144, 49, 25, 0)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
#endregion ### END Koda GUI section ###
Func jiaoshi();======================================================================================================================================
        TrayTip("如何使用", "", 5)
EndFunc   ;==>jiaoshi
;=============================================================================================================================================


Func bumen();========================================================================================================================================
        TrayTip("如何使用", "", 5)
EndFunc   ;==>bumen
;==========================================================================================================================================


While 1
        $nMsg = GUIGetMsg()
        Switch $nMsg
                Case $GUI_EVENT_CLOSE
                        ExitLoop
                Case $Button1
                        jiaoshi()
                ;Case $Button2
                        ;bumen()
                        
        EndSwitch
WEnd


Func _SkinGUI($SkincrafterDll, $SkincrafterSkin, $Handle)
        $dll = DllOpen($SkincrafterDll)
        DllCall($dll, "int:cdecl", "InitLicenKeys", "wstr", "1", "wstr", "", "wstr", "1@1.com", "wstr", "1")
        DllCall($dll, "int:cdecl", "InitDecoration", "int", 1)
        DllCall($dll, "int:cdecl", "LoadSkinFromFile", "wstr", $SkincrafterSkin)
        DllCall($dll, "int:cdecl", "DecorateAs", "int", $Handle, "int", 25)
        DllCall($dll, "int:cdecl", "ApplySkin")
EndFunc   ;==>_SkinGUI



Func Quit()
        GUISetState(@SW_HIDE)
        DllCall($dll, "int:cdecl", "DeInitDecoration")
        DllCall($dll, "int:cdecl", "RemoveSkin")
        DllClose($dll)
        ;DirRemove(@AppDataDir&"\skin",1)
        Exit
EndFunc   ;==>Quit
发表于 2011-10-11 13:06:44 | 显示全部楼层
SkinCrafterDll.dll 在Tab标签页使用皮肤有问题,之前论坛就有不少这类问题,建议使用 Skin.dll 加载.she皮肤
发表于 2011-10-11 13:11:10 | 显示全部楼层
例子

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?加入

×

评分

参与人数 1金钱 +30 收起 理由
iori2882 + 30 谢谢 用你的方法解决了

查看全部评分

发表于 2011-10-12 19:25:23 | 显示全部楼层
多提供点SHE就好哈呵呵
发表于 2011-10-15 06:19:45 | 显示全部楼层
学习学习啦
发表于 2011-10-15 15:23:16 | 显示全部楼层
学习了好多东西呀
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-6 09:29 , Processed in 0.081479 second(s), 25 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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