Java Swing多文档界面问题
我用JavaSwing做个界面,左边是一个树,右边需要显示左边树某个节点的信息。比如:我点左边树的学生节点,则右边显示学生的信息,我要是点班级则显示班级的信息,学校、老师...
我用Java Swing做个界面,左边是一个树,右边需要显示左边树某个节点的信息。
比如:
我点左边树的学生节点,则右边显示学生的信息,我要是点班级则显示班级的信息,学校、老师也都有节点。
现在就出了一个问题:
左边是树,右边要显示不同的JPanel,我该怎么弄呢?
1.利用多文档界面,点击左边不同的节点显示不同的窗口,这些窗口重叠。
2.利用JTabbedPane(选项卡),每点击一个新节点就新增一个页签。
我倾向于第二种,因为比较容易实现,但是碰到一个问题:
我点了某个学生,右边显示了这个学生信息,我再点击另外一个学生,右边新增一个新学生的信息,我要是再在左边点原来那个学生的信息呢(不能新增页签显示信息了,因为第一次点击已经显示这个学生的信息了)?
选项卡怎么跳回到第一个学生信息的界面?
如果这个方案不行,多文档界面大概应该如何处理? 展开
比如:
我点左边树的学生节点,则右边显示学生的信息,我要是点班级则显示班级的信息,学校、老师也都有节点。
现在就出了一个问题:
左边是树,右边要显示不同的JPanel,我该怎么弄呢?
1.利用多文档界面,点击左边不同的节点显示不同的窗口,这些窗口重叠。
2.利用JTabbedPane(选项卡),每点击一个新节点就新增一个页签。
我倾向于第二种,因为比较容易实现,但是碰到一个问题:
我点了某个学生,右边显示了这个学生信息,我再点击另外一个学生,右边新增一个新学生的信息,我要是再在左边点原来那个学生的信息呢(不能新增页签显示信息了,因为第一次点击已经显示这个学生的信息了)?
选项卡怎么跳回到第一个学生信息的界面?
如果这个方案不行,多文档界面大概应该如何处理? 展开
2个回答
展开全部
要第一种可以用JDesktopPane
无论哪种,
创建了JInternalFrame或者JPanel,放入前JDesktopPane或者JTabbedPane之前,记录他们。用String的ID。例如学生叫"STU_01",班级叫"CLS_01"。把ID放进一个Set<String> displayingPanel = new HashSet<String>();
然后创建JInternalFrame或者JPanel前,创建ID,执行displayingPanel.contains来检测是否已经创建了。如果没有就创建并且记录;有了就用JDesktopPane的setSelectedFrame或者JTabbedPane的setSelectedIndex来显示已经创建的。
两种都不难的。
无论哪种,
创建了JInternalFrame或者JPanel,放入前JDesktopPane或者JTabbedPane之前,记录他们。用String的ID。例如学生叫"STU_01",班级叫"CLS_01"。把ID放进一个Set<String> displayingPanel = new HashSet<String>();
然后创建JInternalFrame或者JPanel前,创建ID,执行displayingPanel.contains来检测是否已经创建了。如果没有就创建并且记录;有了就用JDesktopPane的setSelectedFrame或者JTabbedPane的setSelectedIndex来显示已经创建的。
两种都不难的。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询