这是我的节目的图片。所有这些JMenuItem都在一个JFrame中,我为每个JFrame添加了JPanel。当用户点击一个JMenuItem时,所有JPanels都将不可见,只有相应的JPanel可以工作。
这是一个好方法吗?我的班级很庞大。添加功能之前是5000行。
答案 0 :(得分:5)
由于您似乎拥有相当数量的JPanel,我认为将它们转换为JFrames并不是一个好主意,因为这会混淆用户的dektop(谁想要运行一个应用程序而且所有的突然发现他们的桌面装满了6个或更多的新窗户?)。
所以“JPanel”的选择似乎是合乎逻辑的。
但是,如果您想让用户选择自定义排列这些面板(例如重叠,并排等),那么 JDesktopPane 可能是一个不错的解决方案。
(另请参阅 Java Tutorials 的相关部分。)
与您的问题没有直接关系,但拥有如此庞大的课程(没有功能的5000行......)不被认为是一种良好的编码习惯(如果不是出于其他原因而出于维护原因)。
来自Oraclre的 Code Conventions for the Java Programming Language , 3 - File Organization 部分:
超过2000行的文件很麻烦,应该避免使用。
因此,尝试将其分解为更小,更可重复和可维护的代码/类可能是个好主意。