我目前遇到 Java Jframe 和未更新按钮的小问题。
我试图禁用打印按钮,直到它打开的新 JFrame 打印完成并且 JFrame 关闭...
该按钮只会在出现新窗口时禁用,但在此之前不会禁用,这可能需要一点时间....
我通过这样做将按钮设置为禁用:PrintBttn.setEnabled(false);
我试过调用 mainPanel.revalidate(); mainPanel.repaint(); PrintBttn.revalidate(); PrintBttn.repaint
以及他们在其他论坛中推荐的上述内容的混合...
我现在有点迷茫,为什么它在新窗口出现之前不禁用按钮,因为我做的第一件事就是如上所示禁用它,然后通过并创建新窗口。 ...
谢谢, 埃里克
最佳答案
很可能是释放 EDT 以允许它重新绘制禁用按钮的问题。
一般来说,它看起来像这样:
PrintBttn.setEnabled(false);
SwingUtilities.invokeLater(new Runnable() {
public void run() {
// Code to display the second JFrame goes here
}
};
关于Java JFrame 不更新按钮的设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9255180/