查看: 2523|回复: 4

[已经解决] 如何实现窗口dispose前的关闭特效

[复制链接]

梦石
1
星屑
23241
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

发表于 2014-1-19 13:41:21 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
我希望让窗口在dispose前能够有一个关闭特效(类似滑出屏幕之类的)
请问如何才能实现?
虽然想要仿照windows_message的做法用纤程来实现但是完全看不懂【躺

所以求思路,或者求纤程的使用方法

老黄鸡

梦石
4
星屑
45707
在线时间
7951 小时
注册时间
2009-7-6
回帖
13338

MZ评测员RM创作大赛01组委会开拓者贵宾

发表于 2014-1-19 14:21:57 | 显示全部楼层
这跟线程没啥关系吧,你重定义dispose方法在super之前进入一个循环不就可以了吗

评分

参与人数 1星屑 +85 收起 理由
喵呜喵5 + 85 哦,确实可以这样,问题解决

查看全部评分

RGDirect - DirectX驱动的RGSS,点我了解.
(排满,暂停)RM全系列成套系统定制请联系QQ1213237796
不接受对其他插件维护的委托
回复

使用道具 举报

梦石
1
星屑
23241
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

 楼主| 发表于 2014-1-19 14:28:13 | 显示全部楼层
fux2 发表于 2014-1-19 14:21
这跟线程没啥关系吧,你重定义dispose方法在super之前进入一个循环不就可以了吗 ...

谢谢
P.S.
因为Window_Message中使用Fiber.yield可以让窗口自行update直到全部update完成后继续下一步的处理所以我才会觉得需要使用纤程……
回复

使用道具 举报

梦石
0
星屑
3348
在线时间
1120 小时
注册时间
2009-4-15
回帖
761
发表于 2014-1-20 09:13:15 | 显示全部楼层
正好,最近我在写界面,我是这样子做的,window_base里设定多一个to_x变量,初始化时,to_x=窗口.x,就是让to_x的值和window的x一样。
然后update里,设定如果window.x != window.to_x,那么window.x += 5(或者 -= 5,具体看是需要左移动还是右移动)
然后在dispose之前,设定window.to_x = 你想移动到的坐标值,循环判定,如果window.x == window.to_x,dispose,否则,不动

点评

否则不动那边是怎么写的? 用循环吗?  发表于 2014-1-20 10:34
回复

使用道具 举报

梦石
1
星屑
23241
在线时间
9564 小时
注册时间
2012-6-19
回帖
7018

开拓者短篇九导演组冠军

 楼主| 发表于 2014-1-20 10:29:34 | 显示全部楼层
tan12345 发表于 2014-1-20 09:13
正好,最近我在写界面,我是这样子做的,window_base里设定多一个to_x变量,初始化时,to_x=窗口.x,就是让 ...

我现在是用scene_base中的预关闭方法,再给窗口加上一个移动标志,之后设定起始坐标后其他都扔给update自己来......

点评

对对,就是这样弄,丢给update来移动,然后在scene里,按下返回、关闭之类的按钮时,先设定移动,等window移动结束了,再执行scene的返回、关闭  发表于 2014-1-20 10:44
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部