找回密码
 加入
搜索
查看: 54009|回复: 93

[交流] 第十八讲 GDI+窗口自绘无控件

[复制链接]
发表于 2013-7-7 14:58:10 | 显示全部楼层 |阅读模式
窗口的自绘比较难,先上一个自绘窗口,不支持放控件,后续增加放控件
详细说明等以后有空再添加,先放上源码,好久没添加内容了,也在测试中
感谢Ycxw2008 发布的源码,这里用到了你的画关闭按钮和最小化按钮的方法


#include <DirUIGui.au3>
_GDIPlus_Startup()
$hDirUIGui = _DirUIGui_CreatWin("第十八讲GDI+窗口自绘无控件", 400, 300, -1, -1, 0)
_DirUIGui_SetWinSkin($hDirUIGui, "back.jpg")
;~ $hDirUIGui2 = _DirUIGui_CreatWin("AAAAAA", 300, 200, 1, 1, $hDirUIGui)
Const $tagMSG1 = "hwnd hWnd;uint message;wparam wParam;lparam lParam;dword time;long x;long y"
; #### message loop ####
; =====================================================
Local $tMsg = DllStructCreate($tagMSG1)
Local $pMsg = DllStructGetPtr($tMsg)

While _IsWindow($hDirUIGui)
        If _GetMessage($pMsg, 0, 0, 0) < 1 Then
                ExitLoop
        EndIf
        $sMsg = DllStructCreate($tagMSG1, $pMsg)
        ;鼠标左键释放,改变窗口颜色
        If DllStructGetData($sMsg, "message") = $WM_LBUTTONUP Then
                $r = Random(0, 255)
                $g = Random(0, 255)
                $b = Random(0, 255)
                $color = BitOR(0xFF000000, _;Alpha
                                BitShift($r, -16), _;Red
                                BitShift($g, -8), _;Green
                                $b);Blue
                _DirUIGui_SetWinSkin($hDirUIGui, $color)
        EndIf        
        _TranslateMessage($pMsg)
        _DispatchMessage($pMsg)
WEnd

DllCallbackFree($__DirUIGui_hProc)
_GDIPlus_Shutdown()

DirUIGui.au3部分隐藏,回复下载保存吧
游客,如果您要查看本帖隐藏内容请回复

本帖子中包含更多资源

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

×

评分

参与人数 4威望 +7 金钱 +210 贡献 +46 收起 理由
afan + 2 + 50 + 5 +
pusofalse + 5 + 30 + 10 学习了。
xms77 + 80 + 20 满分~
lpxx + 50 + 11 学习了

查看全部评分

发表于 2013-7-7 16:11:55 | 显示全部楼层
来学习学习
发表于 2013-7-7 16:24:37 | 显示全部楼层
好东西,好好学习下。
发表于 2013-7-7 17:56:53 | 显示全部楼层
回复 1# seniors


    千辛万苦 终于等到这一篇里 哈哈哈
发表于 2013-7-7 19:06:58 | 显示全部楼层
先谢楼主提供
发表于 2013-7-7 19:37:56 | 显示全部楼层
谢谢分享,先收藏
发表于 2013-7-7 20:44:44 | 显示全部楼层
谢谢提供的教程,希望以后写完了能整理成一个完整的教程
发表于 2013-7-7 21:15:02 | 显示全部楼层
学习下。。
发表于 2013-7-7 21:17:23 | 显示全部楼层
回复 1# seniors

先做伸手党,拿来主义。
发表于 2013-7-7 22:16:55 | 显示全部楼层
学到18讲啦,一半都没记牢。一定逮多写才行。
发表于 2013-7-7 23:29:13 | 显示全部楼层
感谢分享,学习了。
发表于 2013-7-8 10:08:28 | 显示全部楼层
好东西要学习一下。。
发表于 2013-7-8 14:17:20 | 显示全部楼层
好戏开始了 支持
发表于 2013-7-8 17:01:44 | 显示全部楼层
学习看看。
发表于 2013-7-9 12:24:50 | 显示全部楼层
S大真的是很有毅力啊,应经出了18讲了,太这得我们学习了!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-3-29 17:35 , Processed in 0.078893 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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