3.窗口与面板(JFrame/JPane)
1.JFrame
1.构造函数
2.demo
public class JFrameDemo implements ActionListener{ public JFrameDemo(){ JFrame f = new JFrame(); Container contentPane= f.getContentPane(); JButton b = new JButton("2222"); contentPane.add(b); b.addActionListener(this); f.setTitle("111"); f.setVisible(true); f.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { // TODO Auto-generated method stub System.exit(0); } }); } public static void main(String[] args) { new JFrameDemo(); } @Override public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub JFrame f=new JFrame(); f.setSize(200, 200); f.show(); } }
2.JLayered Pane
1. 拥有多个层次,通过Z-order的两个整数值确认不同层次之间的上下级关系。
Z-order的Layer数值越大,表示其位置越上层。Position的数值越小则越上层。数值从-1->n-1,-1最底层,0代表最上层,n:同一层组件个数
2.两个整数值:
1.代表层Layer的深度
2.代表同层的相关位置Position
3.6个Z-order的Layer常数:
DEFAULT_LAYER:0
PALETTE_LAYER:100,位于DEFAULT_LAYER上,一般放置可移动的工具栏(Floatable Toolbar)
MODAL_LAYER:200, 位于PALETTE_LAYER上,一般放置对话框(Dialog Box)
POPUP_LAYER:300, 位于MODAL_LAYER上,一般用于快速菜单(Popup Menu)与工具栏(Tool Tips)提示
DRAG_LAYER:400, 位于POPUP_LAYER上,一般用于拖拽组件使其在不同区域上
FRAME_CONTENT_LAYER:-30000,最底层的Layer,用来表示ContentPane与Menu Bar的位置
4.通过getLayer()与setLayer()可以获得跟设置组件的层次值
3.JInternalFrame
1.JInternalFrame跟JFrame相同,但是JInternalFrame必须依附在最上层组件上,不能单独出现。一般会把InternalFrame加入Desktop Pane(特殊的Layered Pane,用来建立虚拟桌面(Virtual Desktop))方便管理。
2.构造函数
4.JPanel的使用
1.构造函数
5.JSplitPane
1.分割面板,将多个组件显示在不同显示区中
2.两个常数:设置水平分割(HORIZONTAL_SPLIT)与垂直分割(VERTICAL_SPLIT)
3.构造函数:
4.Continuous Layout功能:当需要拖拽切割面板的分割线时,窗口组件随分割线的移动而动态改变大小。
6.JTabbedPane(Tab选项框)
1.如果放置文件的文件夹一样,当用户想看哪份文件,只要循着标签上的说明文字来找寻,找到后显示出来即可。利用这个功能,可以有效的管理自己的信息或者文件。
7.JScrollPane
1.滚动面板,由JViewPort(负责显示内容区域的大小)与JScrollBar(产生窗口滚动轴)组成,
2.构造函数:
8.JScrollBar
1.构造函数