Java 中新建一个Timer类,调用的它的schedule方法执行TimerTask类中run()的内容,但是同时系统会继续执行schedule函数后的代码,怎样才能做到run()中的代码执行完之后,再执行schedule后的代码?求解答
------最佳解决方案--------------------------------------------------------
那你直接创建个线程,让它定期调用下窗口大小修改不就好了?
类似:
public void run() {
while (true) { // 死循环或某种终止条件,比如窗口大小已经快没了
//TODO:改变窗口大小
Thread.sleep(200);
}
// 结束如果有什么处理就写在这里了
}
调用时:
MyThread worker = new MyThread(mainWnd);
worker.start();
“几毫秒改变一次窗口大小”
——汗啊,不要这么折腾电脑。。。
------其他解决方案--------------------------------------------------------
也就意味着你本来就打算串行执行这些代码?
那么这种情况下,你为啥要用Timer?
------其他解决方案--------------------------------------------------------
同ls问
直接调用TimerTask对象的run方法即可
------其他解决方案--------------------------------------------------------
同意ls
------其他解决方案--------------------------------------------------------
同一楼的问
------其他解决方案--------------------------------------------------------
我在run()中执行的代码是重设窗口大小,要实现对窗口的动态改变,即几毫秒改变一次窗口大小,使其有动态效果,如果要实现这种机制,是否有什么更好的办法呢? 大神们,莫见笑,呵呵。