这一周我们主要学了其他容器和事件处理
1.JPanel
JPanel可以完成各种复杂的界面显示。在JPanel中可以加入任意的组件,然后直接加入到JPanel容器显示即可。
import java.awt.*;
import javax.swing.*;
public class JavaJPanel {
public static void main(String[] args) {
// int i;
JFrame f=new JFrame("JPane窗体");
JPanel pan=new JPanel();
pan.add(new JLabel("标签-A"));
pan.add(new JLabel("标签-B"));
pan.add(new JLabel("标签-C"));
pan.add(new JButton("按钮-X"));
pan.add(new JButton("按钮-Y"));
pan.add(new JButton("按钮-Z"));
f.add(pan);
f.pack();
Point p=new Point(300,200);
f.setLocation(p);
f.setVisible(true);
}
}
2.JSplitPane
JSplitPane主要功能是分割面板,可以将一个窗体分为两个子窗体,可以是水平排列也可以是垂直排列
常用方法
import javax.swing.*;
import java.awt.*;
public class JavaJSplitPane {
public static void main(String[] args) {
JFrame jframe=new JFrame("JSplitPane窗体");
JSplitPane jsp1=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,new JLabel("左标签"),new JLabel("右标签"));
jsp1.setDividerSize(3);
JSplitPane jsp2=new JSplitPane(JSplitPane.VERTICAL_SPLIT,jsp1,new JLabel("下标签"));
jsp2.setDividerSize(10);
jsp2.setOneTouchExpandable(true);
jframe.add(jsp2);
jframe.setSize(400, 300);
jframe.setLocation(400,300);
jframe.setVisible(true);
}
}
3.JTabbedPane
JTabbedPane是在一个面板上设置多个选项卡供用户选择
主要方法及常量
常用方法及常量
5.事件和监听器
要想清楚事件处理,则首先应该知道事件的定义是什么,事件就是表示应该对象发生的状态变化,例如,每当一个按按钮时,实际上按钮的状态就发生了改变,那么此时就会产生一个事件,而如果想要处理此事件,则就需要事件的监听者不断地监听事件的变化,并且根据这些事件进行相应的处理。
在Swing编程中,依然使用了最早的AWT的事件处理方式,所有的事件类都是EventObject类的子类。
EventObjec类的定义格式如下所示:
public class EventObject extends Objiect implements Seriazable{
public EventObject(Object source){
}
public Object getSource(){
}
public String toString(){
}
}
6.窗体事件
WindowListener时专门处理窗体事件的监听接口,一个窗体的所有变化,如窗口打开、关闭等都可以使用这个接口进行监听。
WindowListener接口的常用方法