怎么让易语言的按在在窗口里移动。

要让按钮始终在窗口里面移动,碰到边框了自动弹回来,我现在写的弹几次就跳到窗口外面去了,大虾帮我改改。.版本2.支持库spec.程序集窗口程序集1.程序集变量按钮走向,文本... 要让按钮始终在窗口里面移动,碰到边框了自动弹回来,我现在写的弹几次就跳到窗口外面去了,大虾帮我改改。

.版本 2
.支持库 spec

.程序集 窗口程序集1
.程序集变量 按钮走向, 文本型

.子程序 右下

.判断循环首 (真)
.如果真 (按钮1.顶边 = _启动窗口.高度 - 按钮1.高度 × 2 或 按钮1.左边 = _启动窗口.宽度 - 按钮1.宽度)
跳出循环 ()
.如果真结束

按钮1.顶边 = 按钮1.顶边 + 1
延迟 (10)

按钮1.左边 = 按钮1.左边 + 1
延迟 (10)
.判断循环尾 ()

.子程序 右上

.判断循环首 (真)
.如果真 (按钮1.顶边 = 0 或 按钮1.左边 > _启动窗口.宽度 - 按钮1.宽度)
跳出循环 ()
.如果真结束

按钮1.顶边 = 按钮1.顶边 - 1
延迟 (10)

按钮1.左边 = 按钮1.左边 + 1
延迟 (10)
.判断循环尾 ()

.子程序 左上

.判断循环首 (真)
.如果真 (按钮1.顶边 = 0 或 按钮1.左边 = 0)
跳出循环 ()
.如果真结束

按钮1.顶边 = 按钮1.顶边 - 1
延迟 (10)

按钮1.左边 = 按钮1.左边 - 1
延迟 (10)
.判断循环尾 ()

.子程序 左下

.判断循环首 (真)
.如果真 (按钮1.顶边 = _启动窗口.高度 - 按钮1.高度 × 1.5 或 按钮1.左边 = 0)
跳出循环 ()
.如果真结束

按钮1.顶边 = 按钮1.顶边 + 1
延迟 (10)

按钮1.左边 = 按钮1.左边 - 1
延迟 (10)
.判断循环尾 ()

.子程序 _按钮1_被单击

.判断循环首 (真)
左下 ()
.如果 (按钮1.左边 ≠ 0)
左上 ()
.否则
右下 ()
.如果结束

左上 ()
.如果 (按钮1.左边 ≠ 0)
左下 ()
.否则
右上 ()
.如果结束

右上 ()
.如果 (按钮1.左边 = _启动窗口.宽度 - 按钮1.宽度)
左上 ()
.否则
右下 ()
.如果结束

右下 ()
.如果 (按钮1.左边 = _启动窗口.宽度 - 按钮1.宽度)
左下 ()
.否则
右上 ()
.如果结束

.判断循环尾 ()
展开
 我来答
百度网友552a555
2010-03-31 · TA获得超过2259个赞
知道大有可为答主
回答量:2433
采纳率:22%
帮助的人:745万
展开全部
需要1-时钟,1-按钮

左键按钮固定速度,固定角度移动
右键按钮随机速度,随机角度移动

.版本 2

.程序集 窗口程序集1
.程序集变量 随机控制, 逻辑型
.程序集变量 左移动值, 整数型
.程序集变量 顶移动值, 整数型

.子程序 _时钟1_周期事件

.如果真 (按钮1.顶边 + 按钮1.高度 > 取用户区高度 ())
顶移动值 = 0 - 随机数 ()
.如果真结束
.如果真 (按钮1.左边 + 按钮1.宽度 > 取用户区宽度 () 或 按钮1.左边 < 0)
左移动值 = 0 - 随机数 ()
.如果真结束
.如果真 (按钮1.顶边 < 0)
顶移动值 = 随机数 ()
.如果真结束
.如果真 (按钮1.左边 < 0)
左移动值 = 随机数 ()
.如果真结束
按钮1.左边 = 按钮1.左边 + 左移动值
按钮1.顶边 = 按钮1.顶边 + 顶移动值

.子程序 随机数, 整数型

.如果真 (随机控制)
返回 (4) ' 返回固定值
.如果真结束
置随机数种子 ()
返回 (取随机数 (1, 8))

.子程序 _按钮1_鼠标左键被放开, 逻辑型
.参数 横向位置, 整数型
.参数 纵向位置, 整数型
.参数 功能键状态, 整数型

时钟1.时钟周期 = 10
按钮1.宽度 = 32
按钮1.高度 = 32
随机控制 = 真
左移动值 = 随机数 ()
顶移动值 = 随机数 ()

.子程序 _按钮1_鼠标右键被放开, 逻辑型
.参数 横向位置, 整数型
.参数 纵向位置, 整数型
.参数 功能键状态, 整数型

时钟1.时钟周期 = 10
按钮1.宽度 = 32
按钮1.高度 = 32
随机控制 = 假
左移动值 = 随机数 () + 随机数 ()
顶移动值 = 随机数 ()
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式