Windowbuilder in Swing Data Binding

Eclipse provides swing data binding function can Model read and write data. However, the need to use PropertyChangeSupport this class to achieve binding properties to meet the listener function can be modified model of post-registration monitoring, or can only read. Its documentation is defined as:

This is a utility class that can be used by beans that supportbound properties.  You can use an instance of this class as a member fieldof your bean and delegate various work to it.

In the bean implements the following methods and set call method firePropertyChange method.

Bean file examples are as follows:

package testdbrw;

import java.beans.PropertyChangeListener;
import java.beans.PropertyChangeSupport;

public class ClassMate {
	private final PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(
			this);
	
	String name;
	String email;
	String phone;
	String idont;

	public String getName() {
		
		
		
		return name;
	}
	/** 
	* 设置name 
	* @param name name 
	*/
	
	public void setName(String newname) {
		String oldValue = name;
		name = newname;
		
		firePropertyChange("name", oldValue, name);
	}
	/** 
	* 获取email 
	* @return email email 
	*/
	public String getEmail() {
		return email;
	}
	/** 
	* 设置email 
	* @param email email 
	*/
	
	public void setEmail(String email) {
		this.email = email;
	}
	/** 
	* 获取phone 
	* @return phone phone 
	*/
	public String getPhone() {
		return phone;
	}
	/** 
	* 设置phone 
	* @param phone phone 
	*/
	
	public void setPhone(String phone) {
		this.phone = phone;
	}
	/** 
	* 获取idont 
	* @return idont idont 
	*/
	public String getIdont() {
		return idont;
	}
	/** 
	* 设置idont 
	* @param idont idont 
	*/
	
	public void setIdont(String idont) {
		this.idont = idont;
	}
	
	
	public void addPropertyChangeListener(PropertyChangeListener listener) {
		propertyChangeSupport.addPropertyChangeListener(listener);
	}

	public void addPropertyChangeListener(String propertyName,
			PropertyChangeListener listener) {
		propertyChangeSupport.addPropertyChangeListener(propertyName, listener);
	}

	public void removePropertyChangeListener(PropertyChangeListener listener) {
		propertyChangeSupport.removePropertyChangeListener(listener);
	}

	public void removePropertyChangeListener(String propertyName,
			PropertyChangeListener listener) {
		propertyChangeSupport.removePropertyChangeListener(propertyName,
				listener);
	}

	protected void firePropertyChange(String propertyName, Object oldValue,
			Object newValue) {
		propertyChangeSupport.firePropertyChange(propertyName, oldValue,
				newValue);
	}
}
Address data binding example:



Published 34 original articles · won praise 9 · views 90000 +

Guess you like

Origin blog.csdn.net/tianyatest/article/details/79683165