.版本 2
.支持库 spec
.支持库 iext
.支持库 iext3
.支持库 ExtMenu
.支持库 eAPI
.程序集 窗口程序集_启动窗口
.子程序 __启动窗口_创建完毕
组件标题繁体化 (_启动窗口)
.子程序 取系统地方, 整数型, , 返回地方ID,中文系统=2052 繁体系统=1028 英文系统=1033 其他的自行查询
返回 (取系统地方ID_ ())
.子程序 窗口_枚举子孙窗口, 整数型, , 用递归方式寻找与指定条件符合的所有下级窗口(包含子窗口以及子窗口的子窗口等)。返回找到的句柄的个数。
.参数 窗口句柄, 整数型, , 欲寻找下级子窗口的窗口句柄。
.参数 处理子程序, 整数型, 可空, 子程序地址,处理找到的窗口句柄,需提供一个整数型参数,用于装载找到的窗口句柄。【参数二和参数三选择其一】
.参数 句柄组, 整数型, 参考 可空 数组, 提供参数时提供数组变量,用于存放找到句柄。需要自行清除旧的数据。
.局部变量 句柄, 整数型
.局部变量 类名, 文本型
.局部变量 标题, 文本型
句柄 = 寻找子窗口_ (窗口句柄, 0, 类名, 标题)
' ============ www.sanye.cx =============--
’本站收录资源,如有密码,默认解压密码都为:www.sanye.cx
’三叶资源网官方③群:33301895
' 投稿邮箱:[email protected]
' ============ =====================--
’专注易语言,按键精灵等编程源码分享的网站
’三叶资源网收集的软件和源码,大部分为软件作者或网友推荐,
’版权归原作者所有,仅供学习和研究使用。
’转载本站提供的资源请勿删除本说明文件。
' 本站提供资源只可供研究使用,请在下载24小时内删除,勿用于商业用途,由此引起一切后果与本站无关。
' ============ www.sanye.cx =============--
.判断循环首 (句柄 ≠ 0)
处理事件 ()
.如果真 (是否为空 (处理子程序) = 假)
调用子程序 (处理子程序, , , 句柄)
.如果真结束
.如果真 (是否为空 (句柄组) = 假)
加入成员 (句柄组, 句柄)
.如果真结束
窗口_枚举子孙窗口 (句柄, 处理子程序, 句柄组)
句柄 = 寻找子窗口_ (窗口句柄, 句柄, 类名, 标题)
.判断循环尾 ()
返回 (取数组成员数 (句柄组))
.子程序 窗口_窗口是否停止响应, 逻辑型, , 真=窗口假死 假=窗口正常
.参数 句柄, 整数型
返回 (判断窗口假死_ (句柄) ≠ 0)
.子程序 转化_gk简体到big5, 文本型
.参数 GBK简体, 文本型
.局部变量 GBK繁体, 文本型
.局部变量 BIG5, 文本型
GBK繁体 = 转化_gbk简体到gbk繁体 (GBK简体)
' ============ www.sanye.cx =============--
’本站收录资源,如有密码,默认解压密码都为:www.sanye.cx
’三叶资源网官方③群:33301895
' 投稿邮箱:[email protected]
' ============ =====================--
’专注易语言,按键精灵等编程源码分享的网站
’三叶资源网收集的软件和源码,大部分为软件作者或网友推荐,
’版权归原作者所有,仅供学习和研究使用。
’转载本站提供的资源请勿删除本说明文件。
' 本站提供资源只可供研究使用,请在下载24小时内删除,勿用于商业用途,由此引起一切后果与本站无关。
' ============ www.sanye.cx =============--
' 本源码来自三叶资源网(www.sanye.cx)
BIG5 = 转化_gbk繁体到big5 (GBK繁体)
返回 (BIG5)
.子程序 转化_gbk繁体到big5, 文本型
.参数 待转换文本, 文本型
.局部变量 len, 整数型, , , 单位: Word
.局部变量 Unicode字节集, 字节集
.局部变量 unicode_len
.局部变量 结果文本, 文本型
len = 双字节到宽字符_ (936, 0, 待转换文本, -1, { }, 0)
Unicode字节集 = 取空白字节集 (len × 2)
双字节到宽字符_ (936, 0, 待转换文本, -1, Unicode字节集, len × 2)
unicode_len = 取字节集长度 (Unicode字节集) ÷ 2
len = 宽字符到双字节3_ (950, 0, Unicode字节集, unicode_len, 结果文本, 0, “”, 0)
结果文本 = 取空白文本 (len)
宽字符到双字节3_ (950, 0, Unicode字节集, unicode_len, 结果文本, len, “”, 0)
返回 (结果文本)
.子程序 转化_gbk简体到gbk繁体, 文本型
.参数 简体文本, 文本型
.局部变量 文本长度, 整数型
.局部变量 繁体文本, 文本型
文本长度 = 取文本长度 (简体文本)
繁体文本 = 取空白文本 (文本长度)
GBK简繁体转换_ (2052, 67108864, 简体文本, 文本长度, 繁体文本, 文本长度)
返回 (繁体文本)
.子程序 窗口_置窗口标题, , , ' 本源码来自三叶资源网(www.sanye.cx)
.参数 窗口句柄, 整数型
.参数 标题文本, 文本型
置窗口标题_ (窗口句柄, 标题文本)
.子程序 组件标题繁体化, , 公开, 在繁体系统下自动将常见窗口组件的标题转为繁体。(在程序启动事件中使用。如果要将菜单繁体化,请提供超级菜单组件)
.参数 窗口, 窗口, , 需要繁体化窗口
.局部变量 句柄组, 整数型, , "0"
.局部变量 i, 整数型
.局部变量 组件原标题, 文本型
.局部变量 寻找句柄, 整数型
.局部变量 超级列表框, 超级列表框
.局部变量 i1, 整数型
.局部变量 组合框, 组合框
.局部变量 选择夹, 选择夹
.局部变量 工具条, 工具条
.局部变量 状态条, 状态条
.局部变量 卷帘式菜单, 卷帘式菜单
.局部变量 i2, 整数型
.局部变量 超级菜单, 超级菜单
.局部变量 菜单数组, 菜单, , "0"
.局部变量 菜单数组2, 菜单, , "0"
.局部变量 菜单数组3, 菜单, , "0"
.局部变量 选择列表框, 选择列表框
.局部变量 列表框, 列表框
.如果真 (取系统地方 () = 1028) ' 判断是否为繁体系统
' ----------------常见组件标题繁体化--------------------
窗口_枚举子孙窗口 (窗口.取窗口句柄 (), , 句柄组)
加入成员 (句柄组, 窗口.取窗口句柄 ())
.计次循环首 (取数组成员数 (句柄组), i)
.如果真 (窗口_窗口是否停止响应 (句柄组 [i]) = 假) ' 如果取停止响应的窗口的标题,会导致程序死掉,所以先判断下
组件原标题 = 取窗口标题 (句柄组 [i])
.如果真 (组件原标题 ≠ “”)
窗口_置窗口标题 (句柄组 [i], 转化_gk简体到big5 (组件原标题))
.如果真结束
.如果真结束
.计次循环尾 ()
' ----------------------超级列表框列标题繁体化------------------------
寻找句柄 = 寻找组件 (窗口, “超级列表框”, , , )
.如果真 (寻找句柄 ≠ 0)
.计次循环首 (取找到组件数目 (寻找句柄), i)
超级列表框 = 取所找到组件 (寻找句柄, i - 1)
.计次循环首 (超级列表框.取列数 (), i1)
组件原标题 = 超级列表框.取列标题 (i1 - 1)
.如果真 (组件原标题 ≠ “”)
超级列表框.置列标题 (i1 - 1, 转化_gk简体到big5 (组件原标题))
.如果真结束
.计次循环尾 ()
.计次循环尾 ()
清除组件寻找句柄 (寻找句柄)
.如果真结束
' ----------------------组合框项目繁体化------------------------
寻找句柄 = 寻找组件 (窗口, “组合框”, , , )
.如果真 (寻找句柄 ≠ 0)
.计次循环首 (取找到组件数目 (寻找句柄), i)
组合框 = 取所找到组件 (寻找句柄, i - 1)
.计次循环首 (组合框.取项目数 (), i1)
组件原标题 = 组合框.取项目文本 (i1 - 1)
.如果真 (组件原标题 ≠ “”)
组合框.置项目文本 (i1 - 1, 转化_gk简体到big5 (组件原标题))
.如果真结束
.计次循环尾 ()
.计次循环尾 ()
清除组件寻找句柄 (寻找句柄)
.如果真结束
' ---------------------选择夹子夹繁体化-------------------------------
寻找句柄 = 寻找组件 (窗口, “选择夹”, , , )
.如果真 (寻找句柄 ≠ 0)
.计次循环首 (取找到组件数目 (寻找句柄), i)
选择夹 = 取所找到组件 (寻找句柄, i - 1)
.计次循环首 (选择夹.取子夹数目 (), i1)
组件原标题 = 选择夹.取子夹名称 (i1)
.如果真 (组件原标题 ≠ “”)
选择夹.置子夹名称 (i1, 转化_gk简体到big5 (组件原标题))
.如果真结束
.计次循环尾 ()
.计次循环尾 ()
清除组件寻找句柄 (寻找句柄)
.如果真结束
' -------------------------工具条按钮繁体化------------------------------------
寻找句柄 = 寻找组件 (窗口, “工具条”, , , )
.如果真 (寻找句柄 ≠ 0)
.计次循环首 (取找到组件数目 (寻找句柄), i)
工具条 = 取所找到组件 (寻找句柄, i - 1)
.计次循环首 (工具条.取按钮数 (), i1)
组件原标题 = 工具条.取标题 (i1 - 1)
.如果真 (组件原标题 ≠ “”)
工具条.置标题 (i1 - 1, 转化_gk简体到big5 (组件原标题))
.如果真结束
组件原标题 = 工具条.取提示文本 (i1 - 1)
.如果真 (组件原标题 ≠ “”)
工具条.置提示文本 (i1 - 1, 转化_gk简体到big5 (组件原标题))
.如果真结束
.计次循环尾 ()
.计次循环尾 ()
清除组件寻找句柄 (寻找句柄)
.如果真结束
' -------------------------状态条繁体化------------------------------------
寻找句柄 = 寻找组件 (窗口, “状态条”, , , )
.如果真 (寻找句柄 ≠ 0)
.计次循环首 (取找到组件数目 (寻找句柄), i)
状态条 = 取所找到组件 (寻找句柄, i - 1)
.计次循环首 (状态条.取栏目数 (), i1)
组件原标题 = 状态条.取文本 (i1 - 1)
.如果真 (组件原标题 ≠ “”)
状态条.置文本 (i1 - 1, 转化_gk简体到big5 (组件原标题))
.如果真结束
.计次循环尾 ()
.计次循环尾 ()
清除组件寻找句柄 (寻找句柄)
.如果真结束
' -----------------------卷帘菜单标题及项目名称繁体化--------------------
寻找句柄 = 寻找组件 (窗口, “卷帘式菜单”, , , )
.如果真 (寻找句柄 ≠ 0)
.计次循环首 (取找到组件数目 (寻找句柄), i)
卷帘式菜单 = 取所找到组件 (寻找句柄, i - 1)
.计次循环首 (卷帘式菜单.取菜单数 (), i1)
组件原标题 = 卷帘式菜单.取菜单名称 (i1 - 1)
.如果真 (组件原标题 ≠ “”)
卷帘式菜单.置菜单名称 (i1 - 1, 转化_gk简体到big5 (组件原标题))
.如果真结束
.计次循环首 (卷帘式菜单.取项目数 (i1 - 1), i2)
组件原标题 = 卷帘式菜单.取项目名称 (i2 - 1, i1 - 1)
.如果真 (组件原标题 ≠ “”)
卷帘式菜单.置项目名称 (i2 - 1, 转化_gk简体到big5 (组件原标题), i1 - 1)
.如果真结束
.计次循环尾 ()
.计次循环尾 ()
.计次循环尾 ()
清除组件寻找句柄 (寻找句柄)
.如果真结束
' -------------------超级菜单----------------------------
寻找句柄 = 寻找组件 (窗口, “超级菜单”, , , )
.如果真 (寻找句柄 ≠ 0)
.计次循环首 (取找到组件数目 (寻找句柄), i)
超级菜单 = 取所找到组件 (寻找句柄, i - 1)
菜单数组 = 超级菜单.取子菜单 ()
.判断循环首 (取数组成员数 (菜单数组) ≠ 0)
.计次循环首 (取数组成员数 (菜单数组), i1)
组件原标题 = 菜单数组 [i1].标题
.如果真 (组件原标题 ≠ “”)
菜单数组 [i1].标题 = 转化_gk简体到big5 (组件原标题)
.如果真结束
菜单数组2 = 超级菜单.取子菜单 (菜单数组 [i1])
.计次循环首 (取数组成员数 (菜单数组2), i2)
加入成员 (菜单数组3, 菜单数组2 [i2])
.计次循环尾 ()
.计次循环尾 ()
菜单数组 = 菜单数组3
清除数组 (菜单数组3)
.判断循环尾 ()
.计次循环尾 ()
清除组件寻找句柄 (寻找句柄)
.如果真结束
' -------------------------选择列表框项目繁体化------------------------------------
寻找句柄 = 寻找组件 (窗口, “选择列表框”, , , )
.如果真 (寻找句柄 ≠ 0)
.计次循环首 (取找到组件数目 (寻找句柄), i)
选择列表框 = 取所找到组件 (寻找句柄, i - 1)
.计次循环首 (选择列表框.取项目数 (), i1)
组件原标题 = 选择列表框.取项目文本 (i1 - 1)
.如果真 (组件原标题 ≠ “”)
选择列表框.置项目文本 (i1 - 1, 转化_gk简体到big5 (组件原标题))
.如果真结束
.计次循环尾 ()
.计次循环尾 ()
清除组件寻找句柄 (寻找句柄)
.如果真结束
' -------------------------列表框项目繁体化------------------------------------
寻找句柄 = 寻找组件 (窗口, “列表框”, , , )
.如果真 (寻找句柄 ≠ 0)
.计次循环首 (取找到组件数目 (寻找句柄), i)
列表框 = 取所找到组件 (寻找句柄, i - 1)
.计次循环首 (列表框.取项目数 (), i1)
组件原标题 = 列表框.取项目文本 (i1 - 1)
.如果真 (组件原标题 ≠ “”)
列表框.置项目文本 (i1 - 1, 转化_gk简体到big5 (组件原标题))
.如果真结束
.计次循环尾 ()
.计次循环尾 ()
清除组件寻找句柄 (寻找句柄)
.如果真结束
.如果真结束