java Swing组件和事件处理
1、常见的容器
JComponent是 Container 的子类,中间容器必须添加到底层容器中才能够发挥作用,
JPanel 面板 :使用jPanel 创建一个面板,再通过添加组件到该面板上面,JPanel默认的布局方式是FlowLayout
JScrollPanel 滑动窗格: 滑动窗格只可以添加一个组件,可以将一个组件放到滑动窗格中,通过滚动条查看,JTextArea不带滚动条可以放到JScrollPanel中。
JScorollPanel scroll=new JScorollPanel(new JTextArea());
JSplitPanel分割窗格: 两种类型,水平和垂直。 JSplitPanel(int a,Component b, Component c);
JLayerPanel 分层窗格: add(JComponent com,int layer)
2、常见布局
FlowLayout : FlowLayout类创建的对象称作FlowLayout型布局,FlowLayout布局是JPanel型容器的默认的布局,
FlowLayout flow=new FlowLayout(); 如果一个容器使用这个布局, con.setLayout(flow) con可以使用Container类提供的add方法将组建顺序的添加到容器中,组建按照加入的先后顺序从左到右,
BorderLayout: BorderLayout是Windows默认的布局,Jframe 、JDialog都是Windows默认的子类,将面板默认分为东西南北中。添加方法 con.add(b,BorderLayout.CENTER)
CardLayout: CardLayout布局可以容纳多个组件,所用的组件被层叠的添加到容器中,每次只能显示一个组件,被显示的组件将占据容器的全部空间。
CardLayout card=new CardLayout();
con.setLayout(card) 。
容器调用 add(String s,Component b) 其中s 是组件的显示代号。 布局card 用CardLayout类提供的方法show ()方法显示con 组件,例如显示容器 con 中组件代号为s 的组件。
card.show(con.s)
GridLayout: GridLayout布局 将面板划分成多个网格,组件就添加到网格中。GridLayout布局比较灵活。使用GridLayout布局方法。首先 划分网格 GridLayout(int m,int n)
GridLayout grid=new GridLayout( 10,2); 第二添加组件到布局中, add(Component c) 将组件c 添加到容器中, 组件添加的顺是 从第一行开始,一次往后。