- 论坛徽章:
- 0
|
Sample Text代码如下:
import java.applet.Applet;
public class Test extends Applet {
public void init() {
// Put your code here
MyButton1 button1 = new MyButton1();
MyButton2 button2 = new MyButton2();
setLayout(null);
add(button1);
add(button2);
button1.setLocation(12,12);
button2.setLocation(60,12);
button1.addActionListener(button2);
}
}
import java.awt.Button;
import java.awt.Graphics;
import java.awt.HeadlessException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.Color;
public class MyButton1 extends Button implements ActionListener {
int n = -1;
int m = -1;
public MyButton1() throws HeadlessException {
setSize(25, 160);
addActionListener(this);
}
public void actionPerformed(ActionEvent e) {
n = (n + 1) % 3;
if (0 == n){
this.setBackground(Color.cyan);
}
else if (1 == n){
this.setBackground(Color.orange);
}
else if (2 == n){
this.setBackground(Color.pink);
}
}
public void paint(Graphics g) {
g.drawString("i", 6, 14);
}
}
import java.awt.Button;
import java.awt.Color;
import java.awt.Graphics;
import java.awt.HeadlessException;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class MyButton2 extends Button implements ActionListener {
int m = -1;
public MyButton2() throws HeadlessException {
setSize(38,80);
setBackground(Color.cyan);
}
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
m = (m + 1) % 3;
this.repaint();
}
public void paint(Graphics g) {
if (0 == m){
g.setColor(Color.red);
g.fillOval(10,3,20,20);
}
else if (1 == m){
g.setColor(Color.yellow);
g.fillOval(10,28,20,20);
}
else if (2 == m){
g.setColor(Color.green);
g.fillOval(10,53,20,20);
}
}
}
目的是通过button1来控制button2,使其象红绿灯一样显示。我的前三次好用,但是到第四次就不显示了,请大虾们帮忙。谢谢 |
|