易语言无限打开/创建窗口

易语言无限打开窗口 自绘皮肤源码

.版本 2 .支持库 spec .程序集 程序集_启动子程序 .程序集变量 主窗口, 分层_窗口 .程序集变量 窗口1, 分层_窗口, , "0", ' 本源码来自三叶资源网(www.sanye.cx) .程序集变量 按钮_添加窗口, 分层_按钮 .程序集变量 集_窗口状态, 分层_窗口状态, , "0" .子程序 _启动子程序, 整数型 主窗口.创建 (0, , , 400, 280, 真, “添加子窗口例子”, , , #青蓝, 253, 真, 真, , , 真, , 到整数 (&_主窗口_创建完毕), , 假, , , , , , , 真, 真, #窗口_关闭钮, #控制钮风格_QQ, , ) 主窗口.事件_可否关闭 (到整数 (&_主窗口_可否关闭)) 窗口_消息循环 () ' 凭空创建窗口必须加入 窗口_消息循环() 不然直接结束 返回 (1) .子程序 _主窗口_可否关闭, 整数型 .参数 窗口句柄, 整数型 PostQuitMessage (0) ' 关闭主窗口前,结束 窗口_消息循环() 返回 (1) .子程序 _主窗口_创建完毕 .参数 窗口句柄, 整数型 按钮_添加窗口.创建普通钮 (窗口句柄, , 120, 200, 60, 25, “添加窗口”, #青蓝, , , #蓝色) 按钮_添加窗口.事件_鼠标单击 (到整数 (&_按钮_添加窗口_鼠标单击)) .子程序 _按钮_添加窗口_鼠标单击 .参数 组件索引, 整数型 .局部变量 成员数, 整数型 .局部变量 n, 整数型 成员数 = 取数组成员数 (窗口1) ' 判断一下窗口数量是否为0或数量和当前创建的数量一直,如果一致则重定义,将窗口数量+1 .判断开始 (成员数 = 0 或 成员数 = 集_窗口状态 [1].已创建数量) 重定义数组 (窗口1, 真, 成员数 + 1) 重定义数组 (集_窗口状态, 真, 成员数 + 1) 成员数 = 取数组成员数 (窗口1) .默认 ' 假设已经创建了5个窗口,但是其中有一个窗口被关闭了,这时候不需要添加窗口上限数量,取出是第几个窗口被关闭了,再创建出来,利用资源 .计次循环首 (成员数, n) .如果真 (集_窗口状态 [n].窗口是否已创建 = 假) 成员数 = n 跳出循环 () .如果真结束 ' 本源码来自三叶资源网(www.sanye.cx) .计次循环尾 () .判断结束 窗口1 [成员数].创建 (0, , , 400, 280, 真, “添加窗口” + 到文本 (成员数), , , #青蓝, 253, 真, 真, , , 真, , , , 假, , , , , , , 真, 真, #窗口_关闭钮, #控制钮风格_QQ, , ) 窗口1 [成员数].事件_可否关闭 (到整数 (&_窗口1_可否被关闭)) 集_窗口状态 [成员数].窗口是否已创建 = 真 ' 每次窗口创建成功后,都在相应窗口上标记已创建 集_窗口状态 [成员数].窗口句柄 = 窗口1 [成员数].取句柄 () ' 在相应窗口上标记该窗口的句柄 集_窗口状态 [1].已创建数量 = 集_窗口状态 [1].已创建数量 + 1 ' 记录总创建的窗口数量,放在第一个成员身上 .如果真 (成员数 = 1) ' 判断第一个窗口是否被创建了 调试输出 (“第一个窗口已创建”) 集_窗口状态 [1].第一个窗口是否被关闭 = 假 .如果真结束 ' 本源码来自三叶资源网(www.sanye.cx) 调试输出 (“当前创建的是” + 到文本 (成员数), “实际已窗口数量” + 到文本 (取数组成员数 (窗口1)), “第一个窗口是否被关闭” = 到文本 (集_窗口状态 [1].第一个窗口是否被关闭)) .子程序 _窗口1_可否被关闭, 整数型 .参数 窗口句柄, 整数型 .局部变量 成员数, 整数型, , , ' 本源码来自三叶资源网(www.sanye.cx) .局部变量 n, 整数型 ' 取出有当前实际创建了多少个窗口 成员数 = 取数组成员数 (窗口1) .计次循环首 (成员数, n) ' 循环判断窗口句柄,得知是那个窗口被关闭了 .如果真 (集_窗口状态 [n].窗口句柄 = 窗口句柄) ' 将被关闭的窗口标记为 假 并将已创建的窗口数量-1 集_窗口状态 [n].窗口是否已创建 = 假 集_窗口状态 [1].已创建数量 = 集_窗口状态 [1].已创建数量 - 1 ' 如果有多个窗口的时候,第一个窗口是第一个被关闭的,当所有窗口都关闭的时候程序会崩溃,做个判断,有多个窗口的时候,是不是第一个窗口首先被关闭的 .如果真 (n = 1 且 集_窗口状态 [1].已创建数量 ≥ 1) 调试输出 (“有多个窗口的时候第一个窗口被关闭了”) 集_窗口状态 [1].第一个窗口是否被关闭 = 真 .如果真结束 跳出循环 () .如果真结束 .计次循环尾 () ' 本源码来自三叶资源网(www.sanye.cx) ' 当所有窗口都被关闭的时候进行判断 .如果真 (集_窗口状态 [1].已创建数量 = 0) ' 判断第一个窗口是否最先被关闭,上面已经进行判断,并标记了 .判断开始 (集_窗口状态 [1].第一个窗口是否被关闭 = 真) 调试输出 (“当前窗口数量为0,但是由于第一个窗口首先被关闭了,不做重定义窗口数组,否则出错”) .默认 调试输出 (“由于第一个窗口是最后一个关闭的,可以将窗口重定义,释放资源,但是最少保留一个窗口,不然出错”) 重定义数组 (窗口1, 真, 1) 重定义数组 (集_窗口状态, 真, 1) .判断结束 .如果真结束 调试输出 (“剩余窗口数量” + 到文本 (集_窗口状态 [1].已创建数量), “实际已创建数量” + 到文本 (取数组成员数 (窗口1)), “第一个窗口是否被关闭=” + 到文本 (集_窗口状态 [1].第一个窗口是否被关闭)) 返回 (1)

易语言无限打开窗口

相关文件下载地址
©下载资源版权归作者所有;本站所有资源均来源于网络,仅供学习使用,请支持正版!

易语言无限打开/创建窗口》有0个想法

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注