关于选取整张图片中的一部分的问题(已经解决)
本帖最后由 gto250 于 2010-5-9 19:19 编辑以前在论坛上看到过一个天气预报的代码,它里面表示天气状况都是用图片显示的,如太阳,雨,多云等,而这些图片又是一整张的,就是说,当它显示天气状况时,是选择图片的一部分显示出来。
但是现在好像找不到那个代码了,有哪位兄弟有保存过那个代码的请共享一下
或者没有收藏过那代码,却也能实现这个功能的兄弟,请参照我附件中的图片
通过个例子将图片中的按钮图片分别显示出来
谢谢
用内嵌窗口的方法应该可以,不过,如果是做按钮的话似乎太麻烦了 不是做按钮,只是将这整张的图片中的按钮部分的图片显示出来,并不是用内嵌窗口的方法
在我之前看到的那个天气的源码中,表示天气情况的图像也是一整张的,根据变量选取其中的一部分显示出来 关注中 期待高手解答 解决了?怎么解决的? 怎么解决的?能把解决方法分享出来吗? _GDIPlus_BitmapCloneArea
这个就可以了 本帖最后由 C.L 于 2010-5-9 23:02 编辑
做个练习,1楼的图片存为:137a.jpg,放在同目录下:
#include <GuiConstantsEx.au3>
#include <GDIPlus.au3>
Dim $images
$images = "0,0,90,90"
$images = "105,0,90,90"
$images = "205,0,220,90"
$images = "0,110,90,90"
$images = "105,110,90,90"
$images = "205,110,220,90"
$images = "0,215,90,90"
$images = "105,220,90,90"
$images = "205,220,220,90"
$images = "0,325,90,90"
$images = "105,325,90,90"
$images = "205,325,220,90"
$form1 = GUICreate("test", 400, 300, @DesktopWidth / 2 - 200, @DesktopHeight / 2 - 150)
$graphic = GUICtrlCreatePic("137a.jpg", 150, 100, 220, 100, 0x0080)
GUICtrlSetBkColor ($graphic,0xffffff)
$lable = GUICtrlCreateLabel ("选择图标:",150,43)
$combo = GUICtrlCreateCombo("", 230, 40)
GUICtrlSetData($combo, "1|2|3|4|5|6|7|8|9|10|11|12", "1")
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $combo
$sNum = GUICtrlRead($combo) - 1
$x = _makeimg($sNum)
GUICtrlSetImage($graphic, "GDIPlus_" & $sNum & ".bmp")
GUICtrlSetPos($graphic, 150, 100, $x, 90)
FileDelete ("GDIPlus_"&$sNum&".bmp")
EndSwitch
WEnd
Func _makeimg($Num)
Local $hBitmap, $hClone, $hImage, $ix0, $iy0, $iX, $iY
$sResult = $images[$Num]
$aResult = StringSplit($sResult, ",")
$ix0 = $aResult
$iy0 = $aResult
$iX = $aResult
$iY = $aResult
_GDIPlus_Startup()
$hImage = _GDIPlus_ImageLoadFromFile("137a.jpg")
$hClone = _GDIPlus_BitmapCloneArea($hImage, $ix0, $iy0, $iX, $iY)
_GDIPlus_ImageSaveToFile($hClone, "GDIPlus_" & $Num & ".bmp")
_GDIPlus_ImageDispose($hClone)
_GDIPlus_ImageDispose($hImage)
_GDIPlus_Shutdown()
Return $iX
EndFunc ;==>_makeimg 不错 这非常有意思 收藏了 代码收藏了.... 选取整张图片中的一部分留脚印专用以备以后查阅. 留脚印专用以备以后查阅. 备以后查阅 分享了谢谢了 有没有查找图片的方法啊
页:
[1]
2