你寫的按鈕計(jì)算吧,這個(gè)類是一個(gè)Applet,其中有一個(gè)按鈕,這個(gè)類本身也是按鈕的動(dòng)作監(jiān)聽器,所以實(shí)現(xiàn)了ActionListener 接口用來給按鈕調(diào)用(也就是 actionPerformed方法),其中的參數(shù)e是事件參數(shù),當(dāng)點(diǎn)擊按鈕時(shí)會(huì)發(fā)送給按鈕使用。e.getSource() == b 就是如果點(diǎn)擊是b這個(gè)按鈕,當(dāng)監(jiān)聽器給一個(gè)按鈕使用時(shí)沒有必要加此判斷,e.getSource就是獲取發(fā)生事件的源對(duì)象,比如
創(chuàng)新互聯(lián)是創(chuàng)新、創(chuàng)意、研發(fā)型一體的綜合型網(wǎng)站建設(shè)公司,自成立以來公司不斷探索創(chuàng)新,始終堅(jiān)持為客戶提供滿意周到的服務(wù),在本地打下了良好的口碑,在過去的十載時(shí)間我們累計(jì)服務(wù)了上千家以及全國政企客戶,如崗?fù)?/a>等企業(yè)單位,完善的項(xiàng)目管理流程,嚴(yán)格把控項(xiàng)目進(jìn)度與質(zhì)量監(jiān)控加上過硬的技術(shù)實(shí)力獲得客戶的一致贊賞。
c = new JButton("點(diǎn)我有次數(shù)哦");
f.getContentPane().add(c);
c.setVisible(true);
c.addActionListener(this);
此時(shí)又增加了一個(gè)按鈕,就可以用e.getSource() 判斷點(diǎn)擊的是哪一個(gè)按鈕。
建議你把面向?qū)ο蟾愣趯W(xué)swing編程吧,很容易看懂的
新建一個(gè)窗口,然后實(shí)現(xiàn)一個(gè)關(guān)閉按鈕”窗口的功能
import?java.awt.*;
import?java.awt.event.*;
public?class?TestWindowEvent?{
public?static?void?main?(String[]?args)?{
new?Frame88?("WindowAdapter");
}
}
class?Frame88?extends?Frame?{
Frame88?(String?s)?{
super(s);
setBounds?(300,300,200,70);
setLayout?(null);
setVisible?(true);
addWindowListener?(new?WindowAdapter()?{
public?void?windowClosing(WindowEvent?e)?{
setVisible?(false);
System.exit(0);
}
}??);
}?
}
使用圖形用戶界面
class Gui extends JFrame implements ActionListener {
private JButton jb = new JButton() ;
Gui() {
super("Gui") ;
this.add(jb) ;//添加按鈕
jb.addActionListener(this) ;//按鈕事件監(jiān)聽
//當(dāng)然你可以按自己的想法做布局
this.pack();
this.setVisible(true);//可見
this.setResizable(false);//不可修改大小
this.setLocation(100, 100);//起始位置
}
//覆寫ActionListener接口中的事件處理方法
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource() == jb) {
//事件處理
}
}
}
兄弟幫你寫了一個(gè):
import java.awt.Button;
import java.awt.Color;
import java.awt.Frame;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.util.Random;
public class Print {
public static void main(String[] args) {
new Te();
}
}
class Te extends Frame implements ActionListener {
Color cc = Color.red;
int x = -20, y = -50;
Random r = new Random();
public Te() {
this.setLayout(null);
Button b = new Button("畫圓");
this.add(b);
b.setBounds(30,30,50,50);
b.addActionListener(this);
this.addWindowListener(new WindowAdapter () {
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
this.setBounds(200,200,500,400);
this.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
this.cc = Color.red;
this.x = r.nextInt(400);
do {
int x1 = r.nextInt(300);
this.y = x1;
} while (this.y 50);
this.repaint();
}
@Override
public void paint(Graphics g) {
Color c = g.getColor();
g.setColor(cc);
g.drawRect(x,y,50,50);
g.setColor(c);
}
}
public?class?Demo?extends?JFrame
{
JButton?jb;?//一個(gè)按鈕
public?static?void?main(String?[]args){
new?Demo();
}
public?Demo()
{
this.setLayout(new?FlowLayout());
jb=new?JButton("按扭");
this.add(jb);
this.setSize(400,300);
this.setVisible(true);
this.setLocation(500,?200);
}
}