欢迎访问悦橙教程(wld5.com),关注java教程。悦橙教程  java问答|  每日更新
页面导航 : > > 文章正文

java PropertyChangeListener示例,,package cn.o

来源: javaer 分享于  点击 20217 次 点评:97

java PropertyChangeListener示例,,package cn.o


package cn.outofmemory.snippets.desktop;import java.awt.BorderLayout;import java.awt.Color;import java.awt.Container;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.beans.PropertyChangeEvent;import java.beans.PropertyChangeListener;import javax.swing.JButton;import javax.swing.JFrame;public class Main {    public static void main(String args[]) {        JFrame frame = new JFrame("Button Sample");        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);        final JButton button1 = new JButton("Press me");        final JButton button2 = new JButton("Press me");        ActionListener actionListener = new ActionListener() {            @Override            public void actionPerformed(ActionEvent actionEvent) {                JButton jButton = (JButton) actionEvent.getSource();                int r = (int) (Math.random() * 100);                int g = (int) (Math.random() * 100);                int b = (int) (Math.random() * 100);                jButton.setBackground(new Color(r, g, b));            }        };        PropertyChangeListener propChangeListn = new PropertyChangeListener() {            @Override            public void propertyChange(PropertyChangeEvent event) {                String property = event.getPropertyName();                if ("background".equals(property)) {                    button2.setBackground((Color) event.getNewValue());                }            }        };        button1.addActionListener(actionListener);        button1.addPropertyChangeListener(propChangeListn);        button2.addActionListener(actionListener);        Container cPane = frame.getContentPane();        cPane.add(button1, BorderLayout.NORTH);        cPane.add(button2, BorderLayout.SOUTH);        frame.setSize(500, 300);        frame.setVisible(true);    }}
相关栏目:

用户点评