先获取图片宽高再定义主窗体大小引发的问题
本帖最后由 lynfr8 于 2009-6-2 15:44 编辑#include <WindowsConstants.au3>
#include <GuiConstantsEx.au3>
#include <GDIPlus.au3>
Opt('MustDeclareVars', 1)
Local $hGUI, $hWnd, $Pic1,$Pic2,$nMsg,$size ,$hImage,$Imageh,$Imagew
$Pic1=@ScriptDir & "\test1.jpg"
$Pic2=@ScriptDir & "\test2.jpg"
_Main()
$hGUI = GUICreate("AU3论坛", $Imagew+150, $Imageh+150, 302, 218)
$hWnd = WinGetHandle("AU3论坛")
GUICtrlCreatePic($Pic1, 0, 0,0,0)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Func _Main()
_GDIPlus_Startup()
$hImage = _GDIPlus_ImageLoadFromFile($Pic1)
$Imageh= _GDIPlus_ImageGetHeight($hImage)
$Imagew= _GDIPlus_ImageGetWidth($hImage)
_GDIPlus_ShutDown()
EndFunc 测试结果:
1.当GUICtrlCreatePic($Pic1, 0, 0,0,0)
和$hImage = _GDIPlus_ImageLoadFromFile($Pic1)
同时以$Pic1为导入图片,能获取图片宽$Imagew高$Imageh,但图片框无法显示图片
2.反之,任意一个定义为$Pic1,另一个定义为$Pic2,则可顺利导入显示
何解?? 原来是漏了一句_GDIPlus_BitmapDispose() 嘿嘿,自问自答 那个时侯研究了很久都找不出原因,只好发帖问问大家
不过我不是那种把问题丢到论坛上就歇着去的人
继续翻看手头的资料才在其他的一个例子发现了这个答案
所以,有时候答案往往是柳暗花明的,说不定再坚持一下就能自己找出答案了呢 恩,精神可嘉,而且也是大家学习的榜样,特别是我?!~ 参与一下,不知道算不算灌水? 对我有大用了.......
页:
[1]