Swing的常见容器的使用方法
时间: 2024-03-07 11:49:58 浏览: 58
中间容器-system architecture: strategy and product development for complex systems 系统架构
Swing是Java的一个GUI工具包,提供了多种容器组件,如JFrame、JPanel、JScrollPane、JTabbedPane、JDesktopPane等等。以下是常见容器的使用方法:
1. JFrame:是最常用的顶层容器,可以用来创建一个窗口。可以使用JFrame的构造函数来创建一个窗口对象,然后通过add()方法向窗口中添加其他组件。
示例代码:
```
import javax.swing.*;
public class MyFrame extends JFrame {
public MyFrame() {
setTitle("My Frame");
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public static void main(String[] args) {
new MyFrame();
}
}
```
2. JPanel:是一个轻量级的容器,可以用来组织其他组件。可以使用JPanel的构造函数来创建一个面板对象,然后通过add()方法向面板中添加其他组件。
示例代码:
```
import javax.swing.*;
public class MyPanel extends JPanel {
public MyPanel() {
JButton button = new JButton("Click me");
add(button);
}
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setTitle("My Panel");
frame.setSize(400, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(new MyPanel());
frame.setVisible(true);
}
}
```
3. JScrollPane:是一个带滚动条的容器,可以用来显示大量数据。可以使用JScrollPane的构造函数来创建一个带滚动条的容器对象,然后通过setViewportView()方法向容器中添加其他组件。
示例代码:
```
import javax.swing.*;
public class MyScrollPane extends JFrame {
public MyScrollPane() {
setTitle("My ScrollPane");
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JTextArea textArea = new JTextArea(20, 30);
JScrollPane scrollPane = new JScrollPane(textArea);
add(scrollPane);
setVisible(true);
}
public static void main(String[] args) {
new MyScrollPane();
}
}
```
4. JTabbedPane:是一个选项卡容器,可以用来切换多个面板。可以使用JTabbedPane的构造函数来创建一个选项卡容器对象,然后通过addTab()方法向容器中添加其他面板。
示例代码:
```
import javax.swing.*;
public class MyTabbedPane extends JFrame {
public MyTabbedPane() {
setTitle("My TabbedPane");
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JTabbedPane tabbedPane = new JTabbedPane();
tabbedPane.addTab("Tab 1", new JButton("Button 1"));
tabbedPane.addTab("Tab 2", new JButton("Button 2"));
tabbedPane.addTab("Tab 3", new JButton("Button 3"));
add(tabbedPane);
setVisible(true);
}
public static void main(String[] args) {
new MyTabbedPane();
}
}
```
5. JDesktopPane:是一个桌面容器,可以用来创建多个内部窗口。可以使用JDesktopPane的构造函数来创建一个桌面容器对象,然后通过add()方法向容器中添加其他内部窗口。
示例代码:
```
import javax.swing.*;
public class MyDesktopPane extends JFrame {
public MyDesktopPane() {
setTitle("My DesktopPane");
setSize(400, 300);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JDesktopPane desktopPane = new JDesktopPane();
JInternalFrame internalFrame = new JInternalFrame("Internal Frame");
internalFrame.setSize(200, 100);
internalFrame.setVisible(true);
desktopPane.add(internalFrame);
add(desktopPane);
setVisible(true);
}
public static void main(String[] args) {
new MyDesktopPane();
}
}
```
这些都是Swing常见的容器组件,掌握它们的使用方法可以帮助你更好地构建Java图形界面应用程序。
阅读全文