Re: source bean notifies target bean with ChangeListener
When I break this up into smaller classes, like North and Center, it
still just seems fuzzy.
Do I want Center to implement PropertyChangeListener?
I'm not clear as to how to use
http://java.sun.com/javase/6/docs/api/java/beans/PropertyChangeSupport.html
posting from google, so it might not wrap well:
/*
* NewJFrame.java
*
* Created on August 7, 2008, 5:43 AM
*/
package a00720398.dummy.gui;
/**
*
* @author thufir
*/
public class NewJFrame extends javax.swing.JFrame {
/** Creates new form NewJFrame */
public NewJFrame() {
initComponents();
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
north = new javax.swing.JPanel();
showRecordHere = new javax.swing.JTextField();
center = new javax.swing.JPanel();
jScrollPane1 = new javax.swing.JScrollPane();
table = new javax.swing.JTable();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
north.setLayout(new java.awt.BorderLayout());
showRecordHere.setText("jTextField1");
north.add(showRecordHere, java.awt.BorderLayout.CENTER);
getContentPane().add(north, java.awt.BorderLayout.NORTH);
center.setLayout(new java.awt.BorderLayout());
table.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
{"a0", "a1", "a2", "a3"},
{"b0", "b1", "b2", "b3"},
{null, null, null, null},
{null, null, null, null}
},
new String [] {
"Title 1", "Title 2", "Title 3", "Title 4"
}
));
table.addMouseListener(new java.awt.event.MouseAdapter() {
public void mouseClicked(java.awt.event.MouseEvent evt) {
tableMouseClicked(evt);
}
});
jScrollPane1.setViewportView(table);
center.add(jScrollPane1, java.awt.BorderLayout.CENTER);
getContentPane().add(center, java.awt.BorderLayout.CENTER);
pack();
}// </editor-fold>
private void tableMouseClicked(java.awt.event.MouseEvent evt) {
String string = table.getValueAt(table.getSelectedRow(),
table.getSelectedColumn()).toString();
showRecordHere.setText(string);
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new NewJFrame().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JPanel center;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JPanel north;
private javax.swing.JTextField showRecordHere;
private javax.swing.JTable table;
// End of variables declaration
}
thanks,
Thufir