📄 beaniebaby.java~8~
字号:
package javabeans;import java.awt.*;import javax.swing.JPanel;import javax.swing.BorderFactory;import javax.swing.border.*;import java.beans.*;import java.awt.event.*;import java.util.*;public class BeanieBaby extends JPanel { BorderLayout borderLayout1 = new BorderLayout(); private float price; // 新增加的price属性声明 private String allTiedup; // allTiedUp属性字段 private transient PropertyChangeSupport propertyChangeListeners = new PropertyChangeSupport(this); private transient Vector mouseListeners; // PropertyChangeSupport实例,用于消息处理 public BeanieBaby() { try { jbInit(); } catch(Exception ex) { ex.printStackTrace(); } } private void jbInit() throws Exception { this.setBackground(Color.red); this.setBorder(BorderFactory.createRaisedBevelBorder()); this.setLayout(borderLayout1); this.setPrice(10); this.getPrice(); } public float getPrice() { // price属性的读方法getter return price; } public void setPrice(float price) { // price属性的写方法setter this.price = price; } public String getAllTiedup() { // allTiedUp读方法 return allTiedup; } public void setAllTiedup(String allTiedup) { // allTiedUp写方法 String oldAllTiedup = this.allTiedup; this.allTiedup = allTiedup; // 利用PropertyChangeSupport通知监听器属性值变了! propertyChangeListeners.firePropertyChange("allTiedup", oldAllTiedup, allTiedup); } // 事件监听器的注销方法 public synchronized void removePropertyChangeListener(PropertyChangeListener l) { super.removePropertyChangeListener(l); propertyChangeListeners.removePropertyChangeListener(l); } // 事件监听器的注册方法 public synchronized void addPropertyChangeListener(PropertyChangeListener l) { super.addPropertyChangeListener(l); propertyChangeListeners.addPropertyChangeListener(l); } public synchronized void removeMouseListener(MouseListener l) { super.removeMouseListener(l); if (mouseListeners != null && mouseListeners.contains(l)) { Vector v = (Vector) mouseListeners.clone(); v.removeElement(l); mouseListeners = v; } } public synchronized void addMouseListener(MouseListener l) { super.addMouseListener(l); Vector v = mouseListeners == null ? new Vector(2) : (Vector) mouseListeners.clone(); if (!v.contains(l)) { v.addElement(l); mouseListeners = v; } } protected void fireMouseClicked(MouseEvent e) { if (mouseListeners != null) { Vector listeners = mouseListeners; int count = listeners.size(); for (int i = 0; i < count; i++) { ((MouseListener) listeners.elementAt(i)).mouseClicked(e); } } } protected void fireMouseEntered(MouseEvent e) { if (mouseListeners != null) { Vector listeners = mouseListeners; int count = listeners.size(); for (int i = 0; i < count; i++) { ((MouseListener) listeners.elementAt(i)).mouseEntered(e); } } } protected void fireMouseExited(MouseEvent e) { if (mouseListeners != null) { Vector listeners = mouseListeners; int count = listeners.size(); for (int i = 0; i < count; i++) { ((MouseListener) listeners.elementAt(i)).mouseExited(e); } } } protected void fireMousePressed(MouseEvent e) { if (mouseListeners != null) { Vector listeners = mouseListeners; int count = listeners.size(); for (int i = 0; i < count; i++) { ((MouseListener) listeners.elementAt(i)).mousePressed(e); } } } protected void fireMouseReleased(MouseEvent e) { if (mouseListeners != null) { Vector listeners = mouseListeners; int count = listeners.size(); for (int i = 0; i < count; i++) { ((MouseListener) listeners.elementAt(i)).mouseReleased(e); } } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -