java中GUI问题

[复制链接]
查看11 | 回复3 | 2008-9-19 16:29:04 | 显示全部楼层 |阅读模式
代码如下
import java.applet.Applet;
import java.awt.BorderLayout;
import java.awt.Button;
import java.awt.Graphics;
import java.awt.Label;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
public class ChouJiang extends Applet {
private Button btn_control = new Button("开始");//控制按钮
private Label label = new Label();//显示数字
private boolean b = true;//线程控制器,编写UI界面的东西都要用到线程要不然界面会出现死机的样子
public void paint(Graphics g) {
}
public void init() {
this.setLayout(new BorderLayout());
this.add(label,BorderLayout.NORTH);
this.add(btn_control,BorderLayout.SOUTH);
btn_control.addActionListener(new Control());
}
class Control implements ActionListener{
public void actionPerformed(ActionEvent arg0) {
if(btn_control.getLabel().equals("开始")){
b = true;
btn_control.setLabel("停止");
new Thread(new Repaint()).start();
}else{
b = false;
btn_control.setLabel("开始");
}
}
}
class Repaint implements Runnable{
public void run() {
while(b){
try {
repaint();
Random random = new Random();
int i = Math.abs(random.nextInt(100));//i的取值范围0-100,详细的参考J2SE的API
label.setText(""+i);
System.out.println(i);
Thread.sleep(200);//延迟200毫秒
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
}
那个开始按钮和停止按钮怎么设置大小啊?我用我btn_control.setSize(xx,xx)好象没用!~~ 请高手帮我看下
我知道啊,但是我为了做个东西交作业,老师要求

回复

使用道具 举报

千问 | 2008-9-19 16:29:04 | 显示全部楼层
是因为你用的布局的关系。你可以定义一个panel,设置按钮大小后把按钮放到panel里。 public void init() {this.setLayout(new BorderLayout());this.add(label, BorderLayout.NORTH);
Panel p = new Panel();btn_control.setSize(10, 10);p.add(btn_control);this.add(p, BorderLayout.SOUTH);
btn_control.addActionListener(new Control());...
回复

使用道具 举报

千问 | 2008-9-19 16:29:04 | 显示全部楼层
按钮的大小一般是btn_control.setSize(new Dimension(30,10));其实一般组件的大小一般都是这么设置比较好!...
回复

使用道具 举报

千问 | 2008-9-19 16:29:04 | 显示全部楼层
建议你弄懂这段程序之后,如果不是出于兴趣的话,就不要继续研究applet和awt了有些资深的Java开发人员从来就没用过它们,甚至也不会!...
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行