java-在失去对JPanel屏幕的关注之后,屏幕不显示内容
作者:互联网
我正在使用带有JPanel的JTabbedPane在一个选项卡上显示JTable,在另一个选项卡上显示文本,下拉列表和jbutton.
第一次运行正常,但是如果我最小化屏幕或将屏幕切换到其他应用程序并返回到我的应用程序,它将显示正确的数据,但是JTabbedPane中的制表符更改存在严重问题.现在选项卡屏幕变为蓝色,并且不显示数据(我希望有数据但它不会重新绘制或刷新整个窗口).
现在使用蓝屏,我执行相同的过程,并在JTabbedPane中更改选项卡,它显示正确的数据.
我使用了重新粉刷,但是不起作用.
正确刷新窗口或标签所需的帮助.
解决方法:
确保通过事件分配线程对Swing组件进行了所有修改(包括更改模型中的数据或手动切换选项卡). Swing允许开发人员忽略线程安全性,但这会产生不确定的行为.
这是修改JComboBox模型内容的示例.
final DefaultComboBoxModel model = (DefaultComboBoxModel) comboBox.getModel();
EventQueue.invokeLater(new Runnable(){
public void run(){
// Add all Swing component modification code here..
// The line of code below is but an example of what you could do
model.addElement("String element");
}
});
标签:jtabbedpane,swing,jpanel,java 来源: https://codeday.me/bug/20191201/2080314.html