JAVA基础的swing组件的问题,在窗体里面添加的标签为什么没有在窗体上面显示,这问题困扰我一天了,谢谢

请看图片,我设置了JDialog弹出框类和一个JFrame框类,是点击JFrame类框上的按钮显示JDialog框。但是问题如下:
JDialog弹出框类:

JFrame类:

结果:

————————————————————————————————————————————
问题1:为什么我在JDialog类和JFrame类当中都设置了一个标签JLabel本来是显示在正中结果都没有显示呢?同样的方法为什么JFrame类中JButton按钮组件又能用。

问题2:JDialog中我为什么容器设置了严肃为蓝色,为什么我的显示结果中,弹出的JDialog类框是白色的,把JDialog关了还会出一个我设置了蓝色JDialog类框呢?如下:

问题3:我在JDialog类设置了把JDialog弹出框也显示在屏幕正中,有什么办法让这个弹出框显示在JFrame框的正中了,意思就是我JFrame框在哪里JDialog弹出框也跟着在哪里,并且一直都在JFrame框正中呢?

就上面3个问题,请大家一定要帮我解答一下,实在感激不尽!!!
还有一个问题4,也请大家帮我解答一下:为什么我在JDialog中为窗体设置了一个官方方式setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);运行的时候会提示:Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: defaultCloseOperation must be one of: DO_NOTHING_ON_CLOSE, HIDE_ON_CLOSE, or DISPOSE_ON_CLOSE呢,如图:

问题1:MyDialog类里面的setVisible方法放置在最后或删除掉,因为你在Myframe中有调用(应该在所有组件添加完之后再进行显示)。
问题2:是否因为你MyDialog没有设置默认关闭操作导致呢?你可以试试。
问题3:是可以的,方法忘记了。不过还可以提供一个通用思路:计算主窗体的坐标从而得出弹出框应该设置的坐标
温馨提示:答案为网友推荐,仅供参考
相似回答