Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- String colorNames[] = {"Red", "Green", "Blue"};
- Color colors[] = {Color.RED, Color.GREEN, Color.BLUE};
- private void cbxColorActionPerformed(java.awt.event.ActionEvent evt) {
- // TODO add your handling code here:
- circle1.setColor(colors[cbxColor.getSelectedIndex()]);
- }
- public BoundPropertyDemoForm() {
- initComponents();
- // Регистрация на слушатели на събитията за компонентите
- circle1.addPropertyChangeListener(square1);
- square1.addPropertyChangeListener(triangle1);
- square1.addPropertyChangeListener(newBean1);
- newBean1.addPropertyChangeListener(newBean2);
- }
- */
- package my.boundproperty;
- import java.awt.Canvas;
- import java.awt.Color;
- import java.awt.Dimension;
- import java.awt.Graphics;
- import java.beans.*;
- /**
- *
- * @author lmn7
- */
- public class NewBean extends Canvas implements PropertyChangeListener {
- private Color color;
- private final PropertyChangeSupport propertySupport;
- public NewBean() {
- setSize(50, 50);
- color = Color.CYAN;
- propertySupport = new PropertyChangeSupport(this);
- }
- public Color getColor() {
- return this.color;
- }
- @Override
- public void addPropertyChangeListener(PropertyChangeListener listener) {
- propertySupport.addPropertyChangeListener(listener);
- }
- @Override
- public void removePropertyChangeListener(PropertyChangeListener listener) {
- propertySupport.removePropertyChangeListener(listener);
- }
- @Override
- public void propertyChange(PropertyChangeEvent evt) {
- setColor((Color) evt.getNewValue());
- }
- public void setColor(Color color) {
- Color oldValue = this.color;
- this.color = color;
- propertySupport.firePropertyChange("color", oldValue, color);
- repaint();
- }
- public void paint(Graphics g) {
- Dimension d = getSize();
- g.setColor(color);
- g.fillOval(0, 0, d.width, d.height - 1);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment