以前一直使用java的RCP编写程序界面,瑞然熟练但是也感觉应该学一下swing编程,来得实在。实数补习。
Swing是sun 公司推出的第二代图形编程包。awt 是第一代。
swing的版面结构:JFrame,JDialog,JWindow继承window类,JApplet继承Applet类 ,他们均有相同的子组件:JRootPane。
JRootPane{ GlassPane,LayeredPane},LayeredPane{Content Pane,Menu Bar}。其中:
GlassPane是一个透明的面板,捕获JFrame上的任何事件。
LayeredPane是一个可以重叠组件的面板,可以在这上面看到Menu Bar或是Popup menu。
ContentPane是LayeredPane的一层,一般不将各种组件放到LayeredPane中,而是Contentpane中,这样系统会自动调节 Toolbar popMenu 等组件了。
几行简单实例代码
import java.awt.Color;
import java.awt.Container;
import javax.swing.JButton;
import javax.swing.JFrame;
public class Simple extends JFrame {
/**
* @param args
*/
public Simple() {//按钮为什么看不见。
// TODO Auto-generated constructor stub
JFrame frame=new JFrame();
Container container=frame.getContentPane();
JButton button=new JButton("touch");
button.setBackground(Color.BLUE);
//container.add(button);
setBounds(100, 100, 100, 100);
setVisible(true );
System.out.println("~~~~~");
}
public static void main(String[] argStrings){
Simple s=new Simple();
}
}
版面管理器 {BorderLayout,FlowLayout,GridLayout,CardLayout,GridBagLayout,BoxLayout}
BorderLayout将版面分为东南西北中五个版面,由于版本问题,好多都不显示,图书馆里的书果然老了。