Java Swing 组件大全3

本文通过三个示例介绍 Java Swing 中 JSplitPane 的使用方法,GroupBox 的布局技巧及 JTable 的基本用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JSplitPane:
package sy;
import java.awt.Container;
import java.awt.Font;
import java.io.File;
import java.util.EmptyStackException;
import java.util.Iterator;
import java.util.Stack;

import javax.swing.Icon;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JSpinner;
import javax.swing.JSplitPane;

public class ImplementsDemo {
public static void main(String[] args) throws EmptyStackException{
JFrame f=new JFrame("Welcome To Earth!");
Container cont=f.getContentPane();
JSplitPane lf=null;
JSplitPane ud=null;
lf=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,new JLabel("左标签"),new JLabel("右标签"));
lf.setDividerSize(30);
ud=new JSplitPane(JSplitPane.VERTICAL_SPLIT,lf,new JLabel("下标签"));
ud.setDividerSize(50);
ud.setOneTouchExpandable(true);
cont.add(ud);
f.setSize(230,80);
f.setLocation(300, 200);
f.setVisible(true);
}

}

GroupBox:
package sy;

import java.awt.Container;

import javax.swing.BorderFactory;
import javax.swing.GroupLayout;
import javax.swing.JCheckBox;
import javax.swing.JDialog;
import javax.swing.JPanel;

public class GroupBoxTest extends JDialog {
/**
*
*/
private static final long serialVersionUID = 1L;
private JCheckBox cb1, cb2, cb3;

public GroupBoxTest() {
createGUI();
}

private void createGUI() {
cb1 = new JCheckBox("xx1", true);
cb2 = new JCheckBox("xx2", true);
cb3 = new JCheckBox("xx3", false);

JPanel p = new JPanel();
GroupLayout layout = new GroupLayout(p);
p.setLayout(layout);

layout.setAutoCreateGaps(true);
layout.setAutoCreateContainerGaps(true);

layout.setHorizontalGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(GroupLayout.Alignment.LEADING)
.addComponent(cb1)
.addComponent(cb2)
.addComponent(cb3))
);
layout.setVerticalGroup(layout.createSequentialGroup()
.addComponent(cb1)
.addComponent(cb2)
.addComponent(cb3)
);
p.setBorder(BorderFactory.createTitledBorder("title"));

Container contentPane = getContentPane();
contentPane.add(p);

setSize(300, 200);
setModal(true);
}

public static void main(String[] args) {
new GroupBoxTest().setVisible(true);
}
}

JTable:
package sy;

import java.awt.BorderLayout;

import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.JTableHeader;

public class TableTest extends JFrame {
public TableTest()
{
JTable table;
this.setLayout(null);
Object data[][]={
{"001","张三","1987-01-02"},
{"002","李四","1989-09-21"},
{"003","王五","1990-08-08"}
};
Object name[]={"学号","姓名","出生时间"};
table=new JTable(data,name);
table.setBounds(0, 0, 450, 450);
table.setRowHeight(20);
JScrollPane pane=new JScrollPane(table);
pane.setBounds(100, 100, 180, 180);

this.add(pane);
this.setVisible(true);
this.setSize(400, 300);
}
public static void main(String[] args) {
new TableTest();
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值