为编程爱好者分享易语言教程源码的资源网
好用的代理IP,游戏必备 ____广告位招租____ 服务器99/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器
好用的代理IP,游戏必备 ____广告位招租____ 服务器低至38/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器

网站首页 > 易语言相关 > 图形图像源码 正文

Uxtheme Viewer 自绘系统组件必备

三叶资源网 2019-05-10 00:58:15 图形图像源码 1267 ℃ 0 评论

Uxtheme Viewer 自绘系统组件必备

@Jie_soft

.版本 2
.支持库 EXMLParser

.程序集 窗口程序集1

.子程序 A2W, 字节集
.参数 Ansi, 文本型, , 欲转换的Ansi文本
.局部变量 Unicode, 字节集
.局部变量 len

len = API_MultiByteToWideChar (936, 0, Ansi, -1, {  }, 0)
Unicode = 取空白字节集 (len × 2)
API_MultiByteToWideChar (936, 0, Ansi, -1, Unicode, len × 2)
返回 (Unicode)


.子程序 __启动窗口_创建完毕
.局部变量 i, 整数型

子程序指针 = API_SetWindowLong (画板1.取窗口句柄 (), #GWL_WNDPROC, &处理)
滑块条1.最小位置 = 10
滑块条1.最大位置 = 画板1.宽度 - 20
滑块条2.最小位置 = 10
滑块条2.最大位置 = 画板1.高度 - 20
滑块条1.位置 = 画板1.宽度 - 40
滑块条2.位置 = 画板1.高度 - 40
XML.导入 (#VIEW)
组合框1.清空 ()
.计次循环首 (XML.取子节点个数 (“view”, ), i)
    组合框1.加入项目 (XML.取节点值文本 (“view/@” + 到文本 (i) + “/class”, ), )
.计次循环尾 ()
组合框1.现行选中项 = 0
_组合框1_列表项被选择 ()


.子程序 处理, 整数型, , 不要修改该子程序的返回值及参数的类型!
.参数 句柄, 整数型
.参数 消息, 整数型
.参数 参数1, 整数型
.参数 参数2, 整数型
.局部变量 ps, PAINTSTRUCT

.判断开始 (消息 = #WM_PAINT)
    API_BeginPaint (句柄, ps)
    draw ()
    API_EndPaint (句柄, ps)
    返回 (0)
.默认

.判断结束
返回 (API_CallWindowProc (子程序指针, 句柄, 消息, 参数1, 参数2))

.子程序 _组合框1_列表项被选择
.局部变量 i, 整数型

组合框2.清空 ()
.变量循环首 (2, XML.取子节点个数 (“view/@” + 到文本 (组合框1.现行选中项 + 1), ), 1, i)
    组合框2.加入项目 (XML.取节点值文本 (“view/@” + 到文本 (组合框1.现行选中项 + 1) + “/@” + 到文本 (i) + “/name”, ), 到整数 (XML.取节点值文本 (“view/@” + 到文本 (组合框1.现行选中项 + 1) + “/@” + 到文本 (i) + “/value”, )))
.变量循环尾 ()
组合框2.现行选中项 = 0
_组合框2_列表项被选择 ()

.子程序 _组合框2_列表项被选择
.局部变量 i, 整数型

组合框3.清空 ()
组合框3.加入项目 (“<NULL>”, 0)
.变量循环首 (3, XML.取子节点个数 (“view/@” + 到文本 (组合框1.现行选中项 + 1) + “/@” + 到文本 (组合框2.现行选中项 + 2), ), 1, i)
    组合框3.加入项目 (XML.取节点值文本 (“view/@” + 到文本 (组合框1.现行选中项 + 1) + “/@” + 到文本 (组合框2.现行选中项 + 2) + “/@” + 到文本 (i) + “/name”, ), 到整数 (XML.取节点值文本 (“view/@” + 到文本 (组合框1.现行选中项 + 1) + “/@” + 到文本 (组合框2.现行选中项 + 2) + “/@” + 到文本 (i) + “/value”, )))
.变量循环尾 ()
组合框3.现行选中项 = 0
_组合框3_列表项被选择 ()

.子程序 draw
.局部变量 htheme, 整数型
.局部变量 hdc, 整数型
.局部变量 rect, RECT
.局部变量 class, 文本型
.局部变量 part, 整数型
.局部变量 states, 整数型

画板1.清除 (, , , )
hdc = API_GetDC (画板1.取窗口句柄 ())
API_GetClientRect (画板1.取窗口句柄 (), rect)
rect.左边 = rect.左边 + (画板1.宽度 - 滑块条1.位置) ÷ 2
rect.右边 = rect.右边 - (画板1.宽度 - 滑块条1.位置) ÷ 2
rect.顶边 = rect.顶边 + (画板1.高度 - 滑块条2.位置) ÷ 2
rect.底边 = rect.底边 - (画板1.高度 - 滑块条2.位置) ÷ 2
class = 组合框1.取项目文本 (组合框1.现行选中项)
part = 组合框2.取项目数值 (组合框2.现行选中项)
.如果真 (组合框3.取项目数 () > 0)
    states = 组合框3.取项目数值 (组合框3.现行选中项)
.如果真结束
htheme = API_OpenThemeData (取窗口句柄 (), A2W (class))
API_DrawThemeBackground (htheme, hdc, part, states, rect, 0)

.如果真 (选择框1.选中)
    API_DrawThemeText (htheme, hdc, part, states, A2W (编辑框1.内容), 取文本长度 (编辑框1.内容), 位或 (#DT_CENTER, #DT_VCENTER, #DT_SINGLELINE), 0, rect)
.如果真结束
.如果真 (选择框2.选中)
    API_DrawThemeEdge (htheme, hdc, part, states, rect, 组合框4.取项目数值 (组合框4.现行选中项), 组合框5.取项目数值 (组合框5.现行选中项), 0)
.如果真结束
API_CloseThemeData (htheme)
API_ReleaseDC (画板1.取窗口句柄 (), hdc)


.子程序 _组合框3_列表项被选择

API_InvalidateRect (画板1.取窗口句柄 (), 0, 1)

.子程序 __启动窗口_将被销毁

XML.释放 ()

.子程序 _选择框1_被单击

API_InvalidateRect (画板1.取窗口句柄 (), 0, 1)

.子程序 _滑块条1_位置被改变

API_InvalidateRect (画板1.取窗口句柄 (), 0, 1)

.子程序 _滑块条2_位置被改变

API_InvalidateRect (画板1.取窗口句柄 (), 0, 1)

.子程序 _组合框4_列表项被选择

API_InvalidateRect (画板1.取窗口句柄 (), 0, 1)

.子程序 _选择框2_被单击

API_InvalidateRect (画板1.取窗口句柄 (), 0, 1)

.子程序 _组合框5_列表项被选择

API_InvalidateRect (画板1.取窗口句柄 (), 0, 1)

.子程序 _编辑框1_内容被改变

API_InvalidateRect (画板1.取窗口句柄 (), 0, 1)
文件下载

来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网⑤群:21414575

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网⑤群:三叶资源网⑤群

网站分类
随机tag
单课基础课程集合OEM信息文件编码检测QQ加好友接口QQ主显goproxy界面引擎源码组合框拼接phpotoshopLOL树型框项目照片墙Web浏览器11111httpwacth超级列表框背景透明图像处理PNG素材动态调用汇编SqlServer通用型哈希表
最新评论