原帖由 sxd 于 2009-1-16 22:21 发表
你的意思是 不加皮肤的时候是正常的 加了就不动了?
是的,不加就能一直滚动,加了就不行!
原帖由 sanhen 于 2009-1-17 00:00 发表
是的。这个问题不管加载任何皮肤都存在有此问题,有时间我研究看下。
首先谢谢三恨,不过是在加载皮肤后才无法滚动,初步测试可能是式样的原因.
附不加载皮肤代码
;Opt("OnExitFunc","Quit")
#include <GUIConstantsEx.au3>
#include <ProgressConstants.au3>
#include <WindowsConstants.au3>
#include <SendMessage.au3>
#Region ### START Koda GUI section ### Form=
;Dim $dll,$bf = "vista.skf" ;皮肤文件路径
$Form1 = GUICreate("窗体1", 413, 305, 302, 218)
;_SkinGUI("SkinCrafterDll.dll", $bf, $form1);
;$Progress1 = GUICtrlCreateProgress(120, 120, 150, 16)
$Progress1 = GUICtrlCreateProgress(120, 120, 150, 16, $PBS_MARQUEE)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
_SendMessage(GUICtrlGetHandle($Progress1), $PBM_SETMARQUEE, True, 50)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
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
;Func Quit()
; GUISetState(@SW_HIDE)
; DllCall($dll, "int:cdecl", "DeInitDecoration")
; DllCall($dll, "int:cdecl", "RemoveSkin")
; DllClose($dll)
; FileDelete(@TempDir&"SkinCrafterDll.dll")
; FileDelete(@TempDir&"vista.skf")
; Exit
;EndFunc
[ 本帖最后由 ceoguang 于 2009-1-17 01:58 编辑 ] |