因此,为了保持简单,我想说我希望在JTabbedPane
中显示3个单独的程序。假设它们都是JFrame
中的Hello World简单文件。
让我们使用这个简单的文件并创建HelloWorld1.java
,HelloWorld2.java
和HelloWorld3.java
。它们以这种方式单独存在。但是说我想将它们合并为一个JTabbedPane
- 仍然将它们分开。我猜我需要创建一个项目(比如在Eclipse中)并在第四个文件中设置JTabbedPane
并添加这些项目?有人可以给我一个演示,这样我就可以更清楚地了解如何解决这个问题。感谢任何帮助。只是真正感兴趣的是主(前)文件的样子。
答案 0 :(得分:4)
public static void main(String[] args) {
JFrame child = new HelloWorld1("child1");
child.add(new JLabel("Child1"));
JTabbedPane jTabbedPane = new JTabbedPane();
jabbedPane.addTab("Child", child.getContentPane());
child = new HelloWorld2("child2");
jabbedPane.addTab("Child2", child.getContentPane());
//and so on with other applications/frames
JFrame main = new JFrame("Main");
main.setSize(600,600);
main.add(jTabbedPane);
main.setVisible(true);
}
答案 1 :(得分:2)
解决方案非常简单:
1)而不是说public class HelloWorld1 extends JFrame{....}
使用public class HelloWorld1 extends JPanel{...}
2)在主要课程(HellowWorld1
,HellowWorld2
和HellowWorld3
)中实例化您的课程,并将其添加到JTabbedPane
,如下所示:
HelloWorld1 hw = new HelloWorld1();
....
JTabbedPane tabbedPane = new JTabbedPane();
tabbedPane.add("Title of first panel",hw);