testclass3.java

来自「java网络高级编程的配套源码,java网络高级编程为清华出版社出版.」· Java 代码 · 共 62 行

JAVA
62
字号
	/*源程序清单10-3*/

	import java.awt.*;
  import java.beans.*;

	public class TestClass3 extends Panel
  {

	  //字符串outString为一个关联属性
	  String outString="Hello!";
	  //申明并实例化一个属性修改对象
	  private PropertyChangeSupport changes=new PropertyChangeSupport(this);

	  public TestClass3()
  {
		setBackground(Color.gray);
		setForeground(Color.red);
	  }

	  //设置整个关联属性
	  public void setOutString(String newOutString)
  {
		String oldOutString=outString;
		outString=newOutString;
		//当修改属性时,发送属性修改事件该监听器
		changes.firePropertyChange("outString", oldOutString, newOutString);
		repaint();
	  }

	  //获取关联属性值
	  public String getOutString()
  {
		return outString;
	  }

	  public Dimension getMinimumSize()
  {
	    return new Dimension(300,200);
	  }

	  public void paint(Graphics g)
  {
		g.drawString(outString ,50,150);
	  }
	  public void update(Graphics g)
  {
	    paint(g);
	  }

	  //下面的两个方法用于添加和删除监听器
	  public void addPropertyChangeListener(PropertyChangeListener l)
  {
		changes.addPropertyChangeListener(l);
	  }

	  public void removePropertyChangeListener(PropertyChangeListener l)
  {
		changes.removePropertyChangeListener(l);
	  }
	}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?