Java 如何解决Swing GUI错误?
我正在开发一个swing应用程序,看起来一切都很好,但最近我在GUI方面遇到了一些问题。 问题是,当我在另一个JintenalFrame中打开JintenalFrame时,它工作正常,但当我再次打开它时,子JintenalFrame会失去控制,布局丢失或可能被破坏。我得到一些照片,可以清楚地解释问题: 这是第一个JinternalFrame,当我单击更新按钮时,第二个JinternalFrame显示在它的内部,如: 但当我关闭第二个并再次打开它时,问题如下所示: IDE会触发一个NPE,其中提到:Java 如何解决Swing GUI错误?,java,swing,user-interface,jinternalframe,Java,Swing,User Interface,Jinternalframe,我正在开发一个swing应用程序,看起来一切都很好,但最近我在GUI方面遇到了一些问题。 问题是,当我在另一个JintenalFrame中打开JintenalFrame时,它工作正常,但当我再次打开它时,子JintenalFrame会失去控制,布局丢失或可能被破坏。我得到一些照片,可以清楚地解释问题: 这是第一个JinternalFrame,当我单击更新按钮时,第二个JinternalFrame显示在它的内部,如: 但当我关闭第二个并再次打开它时,问题如下所示: IDE会触发一个NPE,其
Hibernate: select modalite0_.id_mod as id1_6_, modalite0_.libele as libele6_ from
Modalite modalite0_
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at javax.swing.JTable.prepareRenderer(JTable.java:5735)
at javax.swing.plaf.basic.BasicTableUI.paintCell(BasicTableUI.java:2114)
at javax.swing.plaf.basic.BasicTableUI.paintCells(BasicTableUI.java:2016)
at javax.swing.plaf.basic.BasicTableUI.paint(BasicTableUI.java:1812)
at javax.swing.plaf.ComponentUI.update(ComponentUI.java:161)
at javax.swing.JComponent.paintComponent(JComponent.java:778)
at javax.swing.JComponent.paint(JComponent.java:1054)
at javax.swing.JComponent.paintChildren(JComponent.java:887)
at javax.swing.JComponent.paint(JComponent.java:1063)
at javax.swing.JViewport.paint(JViewport.java:731)
at javax.swing.JComponent.paintChildren(JComponent.java:887)
at javax.swing.JComponent.paint(JComponent.java:1063)
at javax.swing.JComponent.paintChildren(JComponent.java:887)
at javax.swing.JComponent.paint(JComponent.java:1063)
at javax.swing.JComponent.paintChildren(JComponent.java:887)
at javax.swing.JComponent.paint(JComponent.java:1063)
at javax.swing.JComponent.paintChildren(JComponent.java:887)
at javax.swing.JComponent.paint(JComponent.java:1063)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:585)
at javax.swing.JComponent.paintChildren(JComponent.java:887)
at javax.swing.JComponent.paint(JComponent.java:1063)
at javax.swing.JComponent.paintChildren(JComponent.java:887)
at javax.swing.JComponent.paint(JComponent.java:1063)
at javax.swing.JComponent.paintChildren(JComponent.java:887)
at javax.swing.JComponent.paint(JComponent.java:1063)
at javax.swing.JLayeredPane.paint(JLayeredPane.java:585)
at javax.swing.JComponent.paintToOffscreen(JComponent.java:5221)
所以我想问,是否有办法追踪这个错误
我使用Netbeans7.2作为jre 7的ide。@Zakaria Marrah
- 为弹出窗口创建
,为整个JVM实例创建一个JDialog
,通过假设在一瞬间只能看到一个弹出窗口,设置适当的JDialog
JDialog.setDefaultCloseOperations(隐藏打开关闭)
- 创建嵌套所有
JComponents的
JPanel
- 添加/初始化
到XxxTableModel
,错误编码的呈现器和空模型导致JTable
异常
来自
,用于所有harcoded链接、铸件、值比较,然后必须测试模型是否包含prepareRenderer
中的数据,如果通过,则让渲染器中的任何内容都工作prepareRenderer
- 编码错误的
以及EDT之外的更新,导致渲染器
中的所有harcoded链接、铸件、值比较异常prepareRenderer
- 现在,您将只使用visibily for
及其内容JDialog
- 隐藏
JDialog
- 如果有几个视图,请使用
,设置切换到正确的卡CardLayout
- 从
(s)中删除所有值,或从JComponent
模型中删除所有数据
- 切勿在对象上重置、重新初始化或重新创建任何对象
- 使用
获取来自任何外部资源的数据,通过使用SwingWorker
进行侦听PropertyChangeListener
- 在
中将done()
,process
中的批处理值设置为publish
s及其JComponent
模型的值
- 然后调用
,使用JDialog.pack()
移动到屏幕上的适当坐标(相对于JDialog
),移动到JComponents
,然后显示点
包装在JDialog
调用器(必需)
- 要使生产代码使用
,但所有到Swing GUI的输出都必须包装到Runnable#Thread
,您可以忽略为invokeLater
Swing声明的几个方法是线程安全的
- 为弹出窗口创建
,为整个JVM实例创建一个JDialog
,通过假设在一瞬间只能看到一个弹出窗口,设置适当的JDialog
JDialog.setDefaultCloseOperations(隐藏打开关闭)
- 创建嵌套所有
JComponents的
JPanel
- 添加/初始化
到XxxTableModel
,错误编码的呈现器和空模型导致JTable
异常
来自
,用于所有harcoded链接、铸件、值比较,然后必须测试模型是否包含prepareRenderer
中的数据,如果通过,则让渲染器中的任何内容都工作prepareRenderer
- 编码错误的
以及EDT之外的更新,导致渲染器
中的所有harcoded链接、铸件、值比较异常prepareRenderer
- 现在,您将只使用visibily for
及其内容JDialog
- 隐藏
JDialog
- 如果有几个视图,请使用
,设置切换到正确的卡CardLayout
- 从
(s)中删除所有值,或从JComponent
模型中删除所有数据
- 切勿在对象上重置、重新初始化或重新创建任何对象
- 使用
获取来自任何外部资源的数据,通过使用SwingWorker
进行侦听PropertyChangeListener
- 在
中将done()
,process
中的批处理值设置为publish
s及其JComponent
模型的值
- 然后调用
,使用JDialog.pack()
移动到屏幕上的适当坐标(相对于JDialog
),移动到JComponents
,然后显示点
包装在JDialog
调用器(必需)
- 要使生产代码使用
,但所有到Swing GUI的输出都必须包装到Runnable#Thread
,您可以忽略为invokeLater
Swing声明的几个方法是线程安全的
- @Zakaria Marrah