GUI和事件侦听的好几个问题QAQ
第一次接触这种真的看不大懂,求前辈指点一下,谢谢了
import java.awt.*;
import java.applet.*;
/*
点一下Color按钮就改变mycanvas的颜色
*/
public class CanvasTest extends Applet
{
MyCanvas mycanvas=new MyCanvas();
public void init()
{
setLayout(new BorderLayout());
Button button = new Button("Color");
add("West",new Button("papapa"));//加入的这个按钮为什么就没有反应..
add("North",button); //为什么这个按钮有反应,看不出和上面那个有什么区别
add("Center",mycanvas);
resize(200,200);
}
public boolean action(Event evt, Object arg)//经常看到这个函数,两个参数究竟想表达什么
{
if(arg=="Color")
mycanvas.swapColor();
return true;
}
}
class MyCanvas extends Canvas
{
Color color;
public MyCanvas()
{
color=Color.red;
}
public void paint(Graphics g)
{
g.setColor(color);
g.fillRect(20,20,100,100);
g.setColor(Color.GREEN);
g.drawString("CANVAS",40,40);
}
public void swapColor()
{
if(color==Color.black)
color=Color.red;
else
if(color==Color.red)
color=Color.green;
else
color=Color.black;
repaint();
}
}
...全文
相关推荐
自定义事件侦听器
自定义事件侦听器项目模板 此存储库包含一些自定义事件侦听器类,用于演示
Clase_10_de_Java:Java中的事件和侦听器
Java_10_of_Java Java中的事件和侦听器
QAQ-GO:用GO编写的QAQ客户
QAQ-Go 用GO编写的QAQ客户
Java理论与实践:做个好的(事件)侦听器
本文介绍了AWT 和Swing组件使用观察者模式消除了GUI事件生成与它们在指定应用程序中的语义之间的耦合。类似地,Swing 的模型类,也使用观察者消除数据模型表示 与视图生成之间的耦合,从而支持相同数据的多个独立的视图。为了支持侦听器,对象需要维护一个已登记的侦听器列表,提供侦听器登记和取消登记的手段,并在适当的事件发生时调用每个侦听器。使用和支持侦听器很容易,但是在登记接口的两边都应当避免一些缺陷。侦听器涉及的任何对象,都应当是线程安全的,或者是受线程约束的对象,侦听器应当确定自己正在正确的线程中执行。
GUI和AWT事件模型
GUI和AWT事件模型介绍和怎么用即应该注意的地方


Java SE
