JLabel (或任何其他JComponents),当您调用setText()方法时,它的值会发生变化,但是UI中的外观需要稍后更新。(由美国东部时间?)
如果你阻止了EDT,整个画面就会冻结。所以我的问题是,我很高兴的‘冻结’效应阻止任何更多的行动分派。不过,我希望我的标签和其他输出组件不断更新。因此,我正在寻找一种手动更新组件外观的方法。在java中,我发现updateUI()似乎没有用。
如果你知道有什么方法可以像
label.setText("thanks!");
label.update(); 请告诉我。我会非常感激的。
发布于 2013-12-01 04:04:12
不要冻结Swing事件线程,句号。当您这样做时,它就无法执行它的任何任务,如绘图和用户交互;如果不绘制,则不管您尝试什么,它都不会更新。就这么简单。
发布于 2013-12-01 04:02:04
有没有一种实时手动更新JLabel文本的方法?
不,在美国东部时间做。
发布于 2013-12-01 04:04:45
步骤1)不要阻止事件分派线程。
步骤2)通过调用setText,像往常一样更新标签。
https://stackoverflow.com/questions/20308584
复制相似问题