java swing编程入门代码编写(java编程入门)
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(new windowadapter() {
@override
public void windowclosing(windowevent e) {
super.windowclosing(e);
system.exit(0);
}
});
3.个人的一点学习心得:
*学习swing,做出简单的小软件,并不困难,想要做的好看,就需要对布局有较深的研究!
*使用swing的一个用处:swing虽然已经有些过时了,但可以做些小工具,辅助工作等,也可以自娱自乐。个人对电脑图形界面挺感兴趣。
*swing组件使用一些设计模式,是挺值得研究一下,对编程挺要用处!
*学习东西贵在坚持,很多工具包都是类似的,对一种有所精深,其他亦能触类旁通!
4.附一个在youtobe视频中学习到的一个swing程序:
package com.ting723.www;
import java.awt.container;
import java.awt.gridlayout;
import java.awt.event.actionevent;
import java.awt.event.actionlistener;
import javax.swing.imageicon;
import javax.swing.jbutton;
import javax.swing.jframe;
import javax.swing.jpanel;
public class demo10xogame extends jframe{
jpanel jp = new jpanel();
public demo10xogame() {
container c = this.getcontentpane();
c.add(jp);
jp.setlayout(new gridlayout(3, 3));
for (int i = 0; i < 9; i++) {
xobutton jb = new xobutton();
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();
}
}
class xobutton extends jbutton implements actionlistener {
private imageicon x, o;
byte value = 0;
public xobutton() {
x = new imageicon(this.getclass().getresource("x.png"));
o = new imageicon(this.getclass().getresource("o.png"));
this.addactionlistener(this);
}
@override
public void actionperformed(actionevent e) {
value++;
value %= 3;
switch (value) {
case 0:
seticon(null);
break;
case 1:
seticon(x);
break;
case 2:
seticon(o);
}
}
}