Dream Mod 3.0Dream Mod 3.0
首页
快速开始
资源库
首页
快速开始
资源库
  • 进度

    • 更新日志
  • 指南

    • 快速上手
    • App.lua
    • Server.lua
    • 地图
    • 角色
    • 道具
    • 技能
    • 状态
    • 窗口
    • 成长
    • DmTcpClient
    • WebSocketClient
    • SqliteDB
    • 皮肤
    • 自定义组件
  • Api

    • 引擎
    • 地图
    • 角色
    • 道具
    • 技能
    • 状态
    • 窗口
    • 自定义组件
    • 音乐
    • 缓动
    • 全局
  • 控件

    • 标签
    • 按钮
    • 图片框
    • 动画框
    • 模型框
    • 文本框
    • 进度条
    • 技能格子
    • 快捷格子
    • 包裹格子
    • 道具格子
    • 角色框
    • 选择框
    • 选择夹
    • 容器
    • 地图框
    • 滑块条
    • 滚动条
    • 组合框
    • 输入框
    • 列表框
  • 组件

    • 文本
    • 艺术字
    • 精灵
    • 矩形
    • 圆形
    • 动画
    • 模型
  • 其他

    • 丰富文本
    • 模板变量
    • 资源格式
    • 游戏盒子
    • 资源列表
  • 自定义功能

    • 战斗血液效果
    • 地图天气
  • 窗口

    介绍

    窗口组件

    local 窗口配置 = {
    	类型 = "窗口",
    	名称 = "新窗口",
    	标题 = "窗口标题",
    	宽度 = 400,
    	高度 = 200,
    	可移动 = true,
    	默认可视 = true,
    }
    
    return 窗口配置 
    

    配置项

    名称类型必填说明
    类型 文本true固定值:窗口 表示这是一个窗口组件
    名称 文本true全局唯一的窗口标识
    标题 文本false窗口上显示的标题 需要皮肤支持
    x 整数false默认显示坐标x
    y 整数false默认显示坐标y
    宽度 整数false窗口宽度
    高度 整数false窗口高度
    边框宽度 整数false
    边框色 RGBAfalse
    圆角半径 整数false
    圆角边数 整数false
    置顶 逻辑false是否在所有窗口中置顶显示
    可移动 逻辑false窗口是否可移动
    可穿透 逻辑false窗口是否可穿透
    背景色 RGBAfalse
    默认可视 逻辑false默认是否显示
    背景遮罩透明度 整数 [0-255]false窗口显示时是否在背后显示一个全屏遮罩,此时窗口为独占模式。
    底图 文本false背景图片标识,当设置了底图后不会再应用皮肤配置。
    九宫 tablefalse底图使用的九宫配置 {左,上,右,下}
    皮肤 文本false指定窗口皮肤 不使用默认皮肤可以填 "无"
    开关动效 tablefalse{开=0,关=0}
    开关音效 tablefalse{开="音效_窗口开",关="音效_窗口关"}
    资源表 tablefalse{ {标识="",文件=""}, {标识="",文件=""}, }
    控件皮肤 tablefalse同App.lua中的控件皮肤
    组件 tablefalse自定义的组件数组
    控件 tablefalse控件数组
    系统事件 tablefalse

    开关动效

    窗口打开或者关闭时,是否伴随一个动画效果。

    名称类型说明
    开整数0 无效果 1 宽高缩放 2 宽度缩放 3 高度缩放
    关整数0 无效果 1 宽高缩放 2 宽度缩放 3 高度缩放
    开关动效 = {开=2,关=2},
    

    开关音效

    窗口打开或者关闭时,是否播放一个音效。

    名称类型说明
    开文本音效标识
    关文本音效标识
    开关音效 = {开="音效_窗口开",关="音效_窗口关"},
    

    组件

    可以将 自定义组件 封装在此处。

    控件

    窗口中所有的控件都被填写在控件数组中,形式如下:

    控件 = {
        {类型="标签",...},
        {类型="按钮",...},
        {类型="包裹格子",...},
        ...
        ....
    }
    

    系统事件

    🔹 创建

    所有控件完成初始化,窗口创建后触发

    回调参数类型说明描述
    窗口对象 窗口对象

    示例

    系统事件 = {
        创建 = function(窗口对象)
            调试输出(窗口对象.名称,"创建")
        end,
    }
    

    🔹 打开

    窗口打开时触发

    回调参数类型说明描述
    窗口对象 窗口对象

    示例

    系统事件 = {
        打开 = function(窗口对象)
            调试输出(窗口对象.名称,"打开")
        end,
    }
    

    🔹 关闭

    窗口关闭时触发

    回调参数类型说明描述
    窗口对象 窗口对象

    示例

    系统事件 = {
        关闭 = function(窗口对象)
            调试输出(窗口对象.名称,"关闭")
        end,
    }
    

    🔹 点击

    • 窗口被点击时触发
    • 优先于控件事件触发,可以通过 return false 来阻止事件继续传播
    回调参数类型说明描述
    窗口对象 窗口对象
    键值 整数 0:左键 1:右键 2:中键。
    功能键 整数1:Ctrl 2:Shift 3:Alt 是否处于按下状态

    示例

    系统事件 = {
        点击 = function(窗口对象,键值,功能键)
            调试输出(窗口对象.名称,"点击",窗口对象.鼠标坐标,键值,功能键)
            窗口对象.关闭()
            return false  --- 可以通过 return false 来阻止事件继续传播
        end,
    }
    

    🔹 自定义事件

    是指通过Api 加入事件 创建的事件。

    回调参数类型说明描述
    窗口对象 窗口对象
    事件附加 table 是指通过Api [加入事件]中传递进来的 附加信息
    dt 数值 事件执行的实际间隔时间
    time 数值 事件执行的总时间

    示例

    系统事件 = {
    
        创建 = function(窗口对象)
            窗口对象.加入事件("定时器",{},500,false)
        end,
    
        定时器 = function (窗口对象,tbl,dt,time)
            调试输出(tbl,dt,time)
        end,
    
    }
    
    Prev
    状态
    Next
    成长