如何调用DLL中的图片~不是图标~
写GUI时,会用到一些背景按钮之类的图片,因为数量比较多,所以使用fileinstall很不方便,释放之后还有删除。因此想请教下如何调用DLL中的图片。如果可以调用的话,就可以把所有的图片打包到DLL中使用了,这样就会方便很多。
在帮助中看到GUICtrlCreateIcon函数可以调用DLL里的图标,但是GUICtrlCreatePic是否不能调用DLL中的图片,也不知是我不懂还是确实不能调用~
有哪位大侠知道如何调用DLL中的图片吗?请教!!! 一直无人回答~~大侠哪里去了?? 本帖最后由 lynfr8 于 2009-8-15 14:56 编辑
目前我看到的所有的代码中用到GUICtrlCreatePic必定是文件路径形式引用的
-----------------------------
7楼已经给出可行方法
事实再一次证明我是菜鸟
呵呵~~~
谢谢7楼:face (20): {:2_72:}应该是可以吧 不过我不会 _WinAPI_LoadImage
_GDIPlus_GraphicsDrawImage
_GDIPlus_BitmapCreateFromHBITMAP
_GDIPlus_GraphicsCreateFromHWND
大概会用到这4个函数。 _WinAPI_LoadImage
_GDIPlus_GraphicsDrawImage
_GDIPlus_BitmapCreateFromHBITMAP
_GDIPlus_GraphicsCreateFromHWND
大概会用到这4个函数。
pusofalse 发表于 2009-5-17 22:05 http://www.autoitx.com/images/common/back.gif
如果你知道怎么调用
请写个演示出来让大家学习下
-------------------------
注意
是请求
不是要求 Re 6#:#include <WinAPI.au3>
#include <GDIPlus.au3>
_GDIPlus_Startup()
$hLibrary = _WinAPI_LoadLibrary("Shell32.dll")
$hBitmap = _WinAPI_LoadBitmap($hLibrary, 131)
_WinAPI_FreeLibrary($hLibrary)
$hGUI = GUICreate("Test", 400, 300)
GUISetState()
$hBmp = _GDIPlus_BitmapCreateFromHBITMAP($hBitmap)
$hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)
_GDIPlus_GraphicsDrawImage($hGraphic, $hBmp, 0, 0)
_GDIPlus_BitmapDispose($hBmp)
_GDIPlus_GraphicsDispose($hGraphic)
Do
Until guiGetMsg() = -3
_GDIPlus_Shutdown() 本帖最后由 lynfr8 于 2009-5-17 22:47 编辑
完美通过测试
学到新东西了
谢谢楼上的赐教 7# pusofalse
有个问题,最小化窗口,再打开,图片就没了. Re itijl:
是的,这样的问题在我学习GDI函数以来一直困扰着我,帮助文件的几个例子也存在此问题。用最笨的方法吧,复原窗口后再重绘一次,应该还有别的方法。#include <WinAPI.au3>
#include <GDIPlus.au3>
#include <GUIConstants.au3>
_GDIPlus_Startup()
$hLibrary = _WinAPI_LoadLibrary("Shell32.dll")
$hBitmap = _WinAPI_LoadBitmap($hLibrary, 131)
_WinAPI_FreeLibrary($hLibrary)
$hGUI = GUICreate("Test", 400, 300)
GUISetState()
$hBmp = _GDIPlus_BitmapCreateFromHBITMAP($hBitmap)
$hGraphic = _GDIPlus_GraphicsCreateFromHWND($hGUI)
_GDIPlus_GraphicsDrawImage($hGraphic, $hBmp, 0, 0)
Do
$iMsg = guiGetMsg()
if $iMsg = $GUI_EVENT_RESTORE Then
_GDIPlus_GraphicsDrawImage($hGraphic, $hBmp, 0, 0)
EndIf
Until $iMsg= -3
_GDIPlus_BitmapDispose($hBmp)
_GDIPlus_GraphicsDispose($hGraphic)
_GDIPlus_Shutdown() http://www.autoitx.com/forum.php?mod=viewthread&tid=1519嵌入文件释放和引用 10# pusofalse
谢谢这位朋友。 11# autoit3CN
这位兄弟能支持新版吗? 11# autoit3CN
这位兄弟能支持新版吗?
itljl 发表于 2009-5-19 00:25 http://www.autoitx.com/images/common/back.gif
可以调用啊 GUI方面的.先记下行
页:
[1]
2