1. Swing是一个为Java设计的GUI工具包。
知道是做UI界面的即可了。
2.Swing 编程基本流程
第一步: 取得主窗体
JFrame jf = new JFrame(“Demo1”);
第二步:获得主窗体的容器
Container c = jf.getContentPane();
第三步:设置容器布局
c.setLayout(new FlowLayout(FlowLayout.LEFT,20,20));
第四步:添加组件及设置组件属性
JLabel label1 = new JLabel(“Hello World!”);JLabel label2 = new JLabel(“Bye World!”);label1.setBackground(Color.BLUE);label1.setOpaque(true);
第五步:设置窗体属性,关闭主窗体,退出程序
jf.setSize(200, 100); //设置主窗体大小jf.setVisible(true);
jf.setResizable(false);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置窗体关闭时,,退出程序
另:jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);也可使用以下代码代替
jf.addWindowListener(newWindowAdapter() {
@Overridepublic void windowClosing(WindowEvent e) {super.windowClosing(e);System.exit(0); }});
3.个人的一点学习心得:
*学习Swing,做出简单的小软件,并不困难,想要做的好看,就需要对布局有较深的研究!
*使用Swing的一个用处:Swing虽然已经有些过时了,但可以做些小工具,辅助工作等,也可以自娱自乐。个人对电脑图形界面挺感兴趣。
*Swing组件使用一些设计模式,是挺值得研究一下,对编程挺要用处!
*学习东西贵在坚持,很多工具包都是类似的,对一种有所精深,其他亦能触类旁通!
4.附一个在Youtobe视频中学习到的一个Swing程序:
packagecom.ting723.www;
importjava.awt.Container;
importjava.awt.GridLayout;
importjava.awt.event.ActionEvent;
importjava.awt.event.ActionListener;
importjavax.swing.ImageIcon;
importjavax.swing.JButton;
importjavax.swing.JFrame;
importjavax.swing.JPanel;
publicclass Demo10XOGame extends JFrame{
JPanel jp = new JPanel();
public Demo10XOGame() {
Container c =this.getContentPane();
c.add(jp);
jp.setLayout(newGridLayout(3, 3));
for (int i = 0; i < 9;i++) {
XOButton jb = newXOButton();
jp.add(jb);
}
this.setSize(500, 500);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
this.setVisible(true);
}
public static void main(String[] args){
new Demo10XOGame();
}
}
classXOButton extends JButton implements ActionListener {
private ImageIcon X, O;
byte value = 0;
public XOButton() {
X = newImageIcon(this.getClass().getResource(“x.png”));
O = newImageIcon(this.getClass().getResource(“o.png”));
this.addActionListener(this);
}
@Override
public void actionPerformed(ActionEvente) {
value++;
value %= 3;
switch (value) {
case 0:
setIcon(null);
break;
case 1:
setIcon(X);
break;
case 2:
setIcon(O);
}
}
}
无论做什么,坚持一下,总会出些成果!人生,高兴就好,莫为结果为伤神!
我知道按攻略去旅行的人往往玩得过于按步就班,