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

网站首页 > 易语言相关 > 易语言例程 正文

仿易语言可视化设计修改版

三叶资源网 2019-03-24 20:35:53 易语言例程 1154 ℃ 1 评论

仿易语言可视化设计修改版

@北京城

.版本 2

.程序集 窗口程序集_启动窗口
.程序集变量 当前选择状态, 整数型
.程序集变量 虚线选择框, 虚线选择框类, , "0"
.程序集变量 指针句柄, 整数型
.程序集变量 回调过程, 整数型

.子程序 __启动窗口_创建完毕

实例句柄 = 取实例句柄_ (字符 (0))
加入窗口组件 (“按钮”, #Ico_按钮, &创建按钮)
加入窗口组件 (“编辑框”, #Ico_编辑框, &创建编辑框)
加入窗口组件 (“高级表格”, #Ico_高级表格, &创建高级表格)
加入窗口组件 (“颜色选择器”, #Ico_颜色选择器, &创建颜色选择器)
加入窗口组件 (“月历”, #Ico_月历, &创建月历)
加入窗口组件 (“窗口”, #Ico_窗口, &创建窗口)
加入窗口组件 (“Api编辑框”, #Ico_编辑框, &创建Api编辑框)
加入窗口组件 (“Api按钮”, #Ico_按钮, &创建Api按钮)
加入窗口组件 (“Api月历”, #Ico_月历, &创建Api月历)
' 加入窗口组件 (“COM组件”, #Ico_窗口, &创建COM组件)
载入 (工具条窗口, _启动窗口, 假)
动态组件.初始化窗口 (取窗口句柄 ())
回调过程 = 取得窗口信息_ (取窗口句柄 (), -4)
设置窗口信息_ (取窗口句柄 (), -4, 到整数 (&窗体过程子程序))
指针句柄 = 载入鼠标指针_ (0, 32512)
加入扩展风格 (动态组件.取主窗体句柄 (), 33554432, 真)
加入风格 (动态组件.取主窗体句柄 (), 33554432, 真)
载入 (窗口组件箱, , 假)
载入 (工作夹, , 假)

.子程序 窗体过程子程序, 整数型
.参数 窗口句柄, 整数型
.参数 消息, 整数型
.参数 参数一, 整数型
.参数 参数二, 整数型
.局部变量 记录矩形, 矩形_, 静态, "0"
.局部变量 控件句柄, 整数型, 静态
.局部变量 控件过程, 整数型
.局部变量 横向位置, 整数型
.局部变量 纵向位置, 整数型
.局部变量 矩形, 矩形_
.局部变量 返回过程, 整数型

.判断开始 (消息 = 32)
    返回过程 = 呼叫窗口函数地址_ (回调过程, 窗口句柄, 消息, 参数一, 参数二)
    SetClassLong_ (参数一, -12, 指针句柄)
    .如果真 (参数一 ≠ 窗口句柄)
        设当前指针_ (指针句柄)
    .如果真结束
    .如果真 (取父窗口_ (参数一) ≠ 取父窗口_ (窗口句柄) 且 动态组件.取过程 (参数一) = 0)
        动态组件.添加组件 (窗口句柄, 参数一, , -2)
    .如果真结束
    返回 (返回过程)
.判断 (消息 = 3 或 消息 = 5)
    .如果真 (是否已创建 (工具条窗口))
        .如果 (顶边 ≥ 工具条窗口.高度)
            工具条窗口.移动 (左边, 顶边 - 工具条窗口.高度, 宽度, )
        .否则
            工具条窗口.顶边 = -1
        .如果结束
        _工具条窗口_尺寸被改变 ()
        工具条窗口.移动 (左边, , 宽度, )
    .如果真结束

.判断 (消息 = 515)
    返回 (0)
.判断 (消息 = 512)
    横向位置 = 右移 (左移 (参数二, 16), 16)
    纵向位置 = 右移 (参数二, 16)
    调整中 (横向位置, 纵向位置, 记录矩形)
.判断 (添加中 = 假 且 消息 = 528 或 消息 = 513)
    横向位置 = 右移 (左移 (参数二, 16), 16)
    纵向位置 = 右移 (参数二, 16)
    控件句柄 = 取鼠标位置句柄 ()
    .如果 (选择状态 ≠ 0 且 选择状态 ≠ 10)
        调整开始 (窗口句柄, 横向位置, 纵向位置, 记录矩形)
        返回 (0)
    .否则
        .如果 (控件句柄 = 窗口句柄)
            选择状态 = 0
        .否则
            选择状态 = 10
            .如果真 (动态组件.取父窗口句柄 (控件句柄) ≠ 窗口句柄)
                控件句柄 = 动态组件.取父窗口句柄 (控件句柄)
            .如果真结束

        .如果结束

    .如果结束
    .如果真 (选择状态 = 0 或 选择状态 = 10)
        .如果真 (取数组成员数 (选中组件) = 1 且 选中组件 [1] = 控件句柄)
            调整开始 (窗口句柄, 横向位置, 纵向位置, 记录矩形)
            返回 (0)
        .如果真结束
        .如果真 (取反 (控件句柄 ≠ 窗口句柄 且 取数组成员数 (选中组件) > 1))
            重画调节块 (窗口句柄)
        .如果真结束
        .如果真 (控件句柄 ≠ 窗口句柄 且 取数组成员数 (选中组件) ≤ 1)
            加入成员 (选中组件, 控件句柄)
            显示调节块 (窗口句柄)
        .如果真结束
        调整开始 (窗口句柄, 横向位置, 纵向位置, 记录矩形)
    .如果真结束
    返回 (0)
.判断 (消息 = 514 或 消息 = 517)
    添加中 = 真
    调整完毕 (窗口句柄, 控件句柄, 消息 = 517)
    添加中 = 假
    返回 (0)
.判断 (消息 = 516)
    返回 (0)
.默认

.判断结束
返回 (呼叫窗口函数地址_ (回调过程, 窗口句柄, 消息, 参数一, 参数二))

.子程序 控件过程子程序, 整数型
.参数 窗口句柄, 整数型
.参数 消息, 整数型
.参数 参数一, 整数型
.参数 参数二, 整数型
.局部变量 返回过程

' 输出调试文本 (消息)
.判断开始 (消息 = 513 或 消息 = 515 或 消息 = 516 或 消息 = 517 或 消息 = 7 或 消息 = 274 或 消息 = 164 或 消息 = 161)
    返回 (0)
.判断 (消息 = 15)
    返回过程 = 呼叫窗口函数地址_ (动态组件.取过程 (窗口句柄), 窗口句柄, 消息, 参数一, 参数二)
    显示调节块 (取窗口句柄 ())
    返回 (返回过程)
.判断 (消息 = 32)
    加入扩展风格 (窗口句柄, 33554432, 真)
    加入风格 (窗口句柄, 33554432, 真)
    SetClassLong_ (窗口句柄, -12, 指针句柄)
    返回过程 = 呼叫窗口函数地址_ (动态组件.取过程 (窗口句柄), 窗口句柄, 消息, 参数一, 参数二)
    设当前指针_ (指针句柄)
    返回 (返回过程)
.默认

.判断结束
返回 (呼叫窗口函数地址_ (动态组件.取过程 (窗口句柄), 窗口句柄, 消息, 参数一, 参数二))


.子程序 显示调节块
.参数 窗口句柄, 整数型
.局部变量 i
.局部变量 i2
.局部变量 方向快, 坐标_, , "0"

加入风格 (窗口句柄, 33554432, 假)
.计次循环首 (取数组成员数 (选中组件), i)
    .计次循环首 (8, i2)
        方向快 = 取组件位置 (选中组件 [i]).方向快
        窗口画点 (窗口句柄, 方向快 [i2].横向位置 - 7, 方向快 [i2].纵向位置 - 7, 方向快 [i2].横向位置, 方向快 [i2].纵向位置)
    .计次循环尾 ()
.计次循环尾 ()

.子程序 重画调节块
.参数 窗口句柄, 整数型
.局部变量 i
.局部变量 i2
.局部变量 矩形, 矩形_

.如果真 (取数组成员数 (选中组件) = 0)
    返回 ()
.如果真结束
加入扩展风格 (窗口句柄, 33554432, 假)
.计次循环首 (取数组成员数 (选中组件), i)
    .计次循环首 (8, i2)
        矩形.左边 = 取组件位置 (选中组件 [i]).方向快 [i2].横向位置 - 7
        矩形.顶边 = 取组件位置 (选中组件 [i]).方向快 [i2].纵向位置 - 7
        矩形.右边 = 取组件位置 (选中组件 [i]).方向快 [i2].横向位置
        矩形.底边 = 取组件位置 (选中组件 [i]).方向快 [i2].纵向位置
        屏蔽窗口矩形_ (窗口句柄, 矩形, 0)  ' 效果明显好多了
    .计次循环尾 ()
.计次循环尾 ()
重定义数组 (选中组件, 假, 0)

.子程序 重画指定调节块
.参数 窗口句柄, 整数型
.参数 控件句柄, 整数型
.局部变量 i
.局部变量 i2
.局部变量 矩形, 矩形_

' 加入风格 (窗口句柄, 33554432, 假)
.计次循环首 (8, i2)
    矩形.左边 = 取组件位置 (控件句柄).方向快 [i2].横向位置 - 7
    矩形.顶边 = 取组件位置 (控件句柄).方向快 [i2].纵向位置 - 7
    矩形.右边 = 取组件位置 (控件句柄).方向快 [i2].横向位置
    矩形.底边 = 取组件位置 (控件句柄).方向快 [i2].纵向位置
    ' 重画窗口_ (窗口句柄, 矩形, 1, 1)
    屏蔽窗口矩形_ (窗口句柄, 矩形, 0)
.计次循环尾 ()
矩形 = 取子窗口矩形 (控件句柄)
屏蔽窗口矩形_ (控件句柄, 矩形, 0)

.子程序 调整开始
.参数 窗口句柄, 整数型
.参数 横向位置, 整数型
.参数 纵向位置, 整数型
.参数 矩形, 矩形_, 数组
.局部变量 i

.判断开始 (选择状态 = 0 或 选择状态 = 9)  ' 选择组件、添加组件
    重定义数组 (矩形, 假, 1)
    重定义数组 (虚线选择框, 假, 1)
.默认
    重定义数组 (矩形, 假, 取数组成员数 (选中组件))
    重定义数组 (虚线选择框, 假, 取数组成员数 (选中组件))
.判断结束
时钟1.时钟周期 = 0
加入扩展风格 (窗口句柄, 33554432, 假)
.计次循环首 (取数组成员数 (虚线选择框), i)
    虚线选择框 [i].创建 (窗口句柄, 真)
    .判断开始 (选择状态 = 10)  ' 移动组件
        虚线选择框 [i].开始 ()
        矩形 [i] = 取子窗口矩形 (选中组件 [i])
        矩形 [i].左边 = 横向位置 - 矩形 [i].左边
        矩形 [i].顶边 = 纵向位置 - 矩形 [i].顶边
        矩形 [i].右边 = 矩形 [i].右边 - 矩形 [i].左边 - (横向位置 - 矩形 [i].左边)
        矩形 [i].底边 = 矩形 [i].底边 - 矩形 [i].顶边 - (纵向位置 - 矩形 [i].顶边)
    .判断 (选择状态 = 9)  ' 添加组件
        虚线选择框 [i].开始 (横向位置, 纵向位置, 横向位置 + 100, 纵向位置 + 100)
        矩形 [i].左边 = 横向位置
        矩形 [i].顶边 = 纵向位置
    .判断 (选择状态 = 0)  ' 选择组件
        虚线选择框 [i].开始 ()
        矩形 [i].左边 = 横向位置
        矩形 [i].顶边 = 纵向位置
    .判断 (选择状态 ≥ 1 且 选择状态 ≤ 8)  ' 组件八个方向
        虚线选择框 [i].开始 ()
        矩形 [i] = 取子窗口矩形 (选中组件 [i])
    .默认

    .判断结束

.计次循环尾 ()

.子程序 调整中
.参数 横向位置, 整数型
.参数 纵向位置, 整数型
.参数 矩形, 矩形_, 数组
.局部变量 i

.计次循环首 (取数组成员数 (虚线选择框), i)
    横向位置 = 对齐点线 (横向位置)
    纵向位置 = 对齐点线 (纵向位置)
    .判断开始 (选择状态 = 10)  ' 移动组件    先判断这个吧。由于这个支持多选移动
        虚线选择框 [i].拖动 (横向位置 - 矩形 [i].左边, 纵向位置 - 矩形 [i].顶边, 横向位置 + 矩形 [i].右边, 纵向位置 + 矩形 [i].底边)
    .判断 (选择状态 = 0 或 选择状态 = 9)  ' 选择组件、添加组件
        虚线选择框 [i].拖动 (矩形 [i].左边, 矩形 [i].顶边, 横向位置, 纵向位置)
    .判断 (选择状态 = 1)  ' 组件左上角
        虚线选择框 [i].拖动 (横向位置, 纵向位置, 矩形 [i].右边, 矩形 [i].底边)
    .判断 (选择状态 = 2)  ' 组件顶边
        虚线选择框 [i].拖动 (矩形 [i].左边, 纵向位置, 矩形 [i].右边, 矩形 [i].底边)
    .判断 (选择状态 = 3)  ' 组件右上角
        虚线选择框 [i].拖动 (矩形 [i].左边, 纵向位置, 横向位置, 矩形 [i].底边)
    .判断 (选择状态 = 4)  ' 组件右边
        虚线选择框 [i].拖动 (矩形 [i].左边, 矩形 [i].顶边, 横向位置, 矩形 [i].底边)
    .判断 (选择状态 = 5)  ' 组件右下角
        虚线选择框 [i].拖动 (矩形 [i].左边, 矩形 [i].顶边, 横向位置, 纵向位置)
    .判断 (选择状态 = 6)  ' 组件底边
        虚线选择框 [i].拖动 (矩形 [i].左边, 矩形 [i].顶边, 矩形 [i].右边, 纵向位置)
    .判断 (选择状态 = 7)  ' 组件左下角
        虚线选择框 [i].拖动 (横向位置, 矩形 [i].顶边, 矩形 [i].右边, 纵向位置)
    .判断 (选择状态 = 8)  ' 组件左边
        虚线选择框 [i].拖动 (横向位置, 矩形 [i].顶边, 矩形 [i].右边, 矩形 [i].底边)
    .默认

    .判断结束

.计次循环尾 ()



.子程序 调整完毕
.参数 父窗口句柄, 整数型
.参数 窗口句柄, 整数型
.参数 放弃调整, 逻辑型, 可空
.局部变量 计次, 整数型
.局部变量 数次, 整数型
.局部变量 矩形, 矩形_
.局部变量 移动矩形, 矩形_, , "0"
.局部变量 窗口类型, 整数型

加入扩展风格 (取窗口句柄 (), 33554432, 真)
数次 = 取数组成员数 (虚线选择框)
.如果真 (数次 = 0)
    返回 ()
.如果真结束
.计次循环首 (数次, 计次)
    .如果 (虚线选择框 [计次].结束 (矩形) 且 放弃调整 = 假)
        .判断开始 (选择状态 ≠ 9 且 选择状态 ≠ 0)  ' 调整组件、移动
            矩形.右边 = 矩形.右边 - 矩形.左边
            矩形.底边 = 矩形.底边 - 矩形.顶边
            加入成员 (移动矩形, 矩形)
        .判断 (选择状态 = 0)  ' 选择组件
            选择指定范围组件 (父窗口句柄, 矩形)
        .判断 (选择状态 = 9)  ' 添加组件
            ' 重画调节块 (父窗口句柄)
            动态组件.添加组件 (父窗口句柄, 0, 矩形, 选择组件)
            显示调节块 (父窗口句柄)
        .默认
            重画指定调节块 (父窗口句柄, 选中组件 [计次])
        .判断结束

    .否则
        .判断开始 (选择状态 ≠ 9 且 选择状态 ≠ 0 且 取数组成员数 (选中组件) = 1)
            .如果真 (选择状态 = 9 或 选择状态 = 0 或 选择状态 = 10)
                选择状态 = 0
            .如果真结束
            时钟1.时钟周期 = 1
            重定义数组 (虚线选择框, 假, 0)
            返回 ()
        .默认
            重画调节块 (父窗口句柄)
            窗口类型 = 动态组件.取类型 (窗口句柄)
            .如果真 (窗口类型 ≠ -1 且 窗口类型 ≠ 0)
                加入成员 (选中组件, 窗口句柄)
            .如果真结束
            显示调节块 (父窗口句柄)

        .判断结束


    .如果结束

.计次循环尾 ()
重定义数组 (虚线选择框, 假, 0)
.计次循环首 (取数组成员数 (移动矩形), 计次)
    设置窗口位置_ (选中组件 [计次], 0, 移动矩形 [计次].左边, 移动矩形 [计次].顶边, 移动矩形 [计次].右边, 移动矩形 [计次].底边, 4)
.计次循环尾 ()
_工具条2_被单击 (0)
选择状态 = 0
时钟1.时钟周期 = 1

.子程序 组件工具条
.参数 按钮索引, 整数型

.判断开始 (按钮索引 < 1)
    指针句柄 = 载入鼠标指针_ (0, 32512)
    选择状态 = 0
.默认
    指针句柄 = 载入鼠标指针_ (0, 32515)
    选择状态 = 9
.判断结束


.子程序 _时钟1_周期事件
.局部变量 坐标, 坐标_
.局部变量 方向快, 坐标_, , "0"
.局部变量 i
.局部变量 记录, 坐标_, 静态

取窗口内坐标 (动态组件.取主窗体句柄 (), 坐标, -1)
.如果真 (坐标.横向位置 = 记录.横向位置 且 坐标.纵向位置 = 记录.纵向位置)
    返回 ()
.如果真结束
.如果真 (取数组成员数 (选中组件) = 1 且 选择状态 ≠ 10 且 选择状态 ≠ 9)
    .计次循环首 (8, i)
        方向快 = 取组件位置 (选中组件 [1]).方向快
        .如果 (坐标.横向位置 ≥ 方向快 [i].横向位置 - 7 且 坐标.横向位置 ≤ 方向快 [i].横向位置 且 坐标.纵向位置 ≥ 方向快 [i].纵向位置 - 7 且 坐标.纵向位置 ≤ 方向快 [i].纵向位置)
            选择状态 = i
            指针句柄 = 载入鼠标指针_ (0, 取调整鼠标指针 (i))
            记录 = 坐标
            返回 ()
        .否则
            .如果真 (选择状态 ≠ i)
                选择状态 = 0
            .如果真结束

        .如果结束

    .计次循环尾 ()
.如果真结束
.如果真 (选择状态 = 0)
    指针句柄 = 载入鼠标指针_ (0, 32512)
.如果真结束
记录 = 坐标


.子程序 __启动窗口_按下某键, 逻辑型
.参数 键代码, 整数型
.参数 功能键状态, 整数型

.判断开始 (键代码 = #C键 且 功能键状态 = 1)
    动态组件.复制 ()
.判断 (键代码 = #V键 且 功能键状态 = 1)
    动态组件.粘贴 ()
.默认

.判断结束
文件下载

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

已有1位网友发表了看法:

欢迎 发表评论:

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

网站分类
随机tag
云的多文档窗口界面支持库抖音评论采集RSAHttpProxy反跟踪网页POST视频教程名片点赞udp广播组播彩票开奖遗漏组合分析jar解包数据结构易大漠教程AI文字转语音微信扫码支付游戏UI源码dom翻译工具EXDUI4.1例程Ex_DirectUI
最新评论