1.窗体建立
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
public class JSplitPaneDemo extends JFrame{
private SearchPanel searchPanel;
private OpPanel opPanel;
private TablePanel tablePanel;
public JSplitPaneDemo() {
//窗体设计
this.setTitle("学生信息管理");
this.setSize(900, 700);
this.setLocationRelativeTo(null);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.initComponents();
//为操作条中所有的按钮注册监听器,
this.setListener();
}
通过继承JFrame,进行窗体的建立,一般窗体的标题,尺寸,出现的位置,窗体关闭的操作分别通过调用setTitle,setSize,setLocationRelativeTo,setDefaultCloseOperation 来实现,同时通过调用initComponents构建方法将组件按照布局的方式放入窗体中。
2.布局
public void initComponents(){
//边界布局
//北部
this.setLayout(new BorderLayout());
searchPanel = new SearchPanel();
searchPanel.setPreferredSize(new Dimension(1,150));
this.add(BorderLayout.NORTH,searchPanel);
//中间
//里布局:左边的分割
JSplitPane jsp = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
opPanel = new OpPanel();
jsp.setLeftComponent(opPanel);
//里布局:右边的分割
tablePanel =new TablePanel();
jsp.setRightComponent( tablePanel);
jsp.setDividerLocation(150);
this.add(BorderLayout.CENTER,jsp);
this.setVisible(true);
}
组件是我之前就已经设计好的,这里就不放图片了,布局的设计思路是:首先通过边界布局将窗体分为南北两个部分,北边用来放我的SeachPanel,南边用JSplitPane的分割布局将南部分割为左、右两个部分,左边放TablePane,右边放OpPanel