Java 如何在使用线程时更改设置边界

Java 如何在使用线程时更改设置边界,java,multithreading,user-interface,Java,Multithreading,User Interface,我想这样做。。。它适用于简单语句,但在设置边界的情况下,只执行最后一条语句 try{ label.setBounds(40,50,150,150); obj.sleep(1000); label.setBounds(70,50,150,150); obj.sleep(1000); label.setBounds(100,50,150,150); } catch(Exception e){ // } 到底是什么问题?您希望标签每1000毫秒更改一次大小吗?

我想这样做。。。它适用于简单语句,但在设置边界的情况下,只执行最后一条语句

try{
    label.setBounds(40,50,150,150);
    obj.sleep(1000);
    label.setBounds(70,50,150,150);
    obj.sleep(1000);
    label.setBounds(100,50,150,150);
}
catch(Exception e){
//
}

到底是什么问题?您希望标签每1000毫秒更改一次大小吗?当您提供的上下文太少时(例如,代码何时执行?哪个线程执行它?)很难回答,但有一点很清楚,除非前两个也执行,否则最后一个
setBounds(…)
无法执行。可能发生的情况是,直到所有三个调用完成后的某个时间,才会发生导致重新绘制标签的事件。@Misteradi1我想更改label@jameslarge先生我只是想改变一下标签的位置,实际上是按下按钮导致标签改变,而只是想向用户显示按钮按下了!我只能猜测答案。如果你想要一个真实的答案,你必须展示更多的代码。我的猜测是,您的代码片段位于事件处理程序中。我的猜测是,GUI框架在处理程序返回之前不会重新绘制标签。