Re: JButton Action Listeners Events
Sriram wrote:
Hi all
I have a question regarding action events... Is it possible for a
button to have multiple events generated??...
You should be able to register as many listeners on a component as you
want. That will in effect give you X repetitions of the event.
I have been wanting to
generate two events from clicking a single button ..My following
sample code has the Add Row button and Up button that generates
separate events but I would like a single Up button to generate adding
a row below as well as insertion of a row if there are entries say
between table cells A and C it should insert a cell in between
(functionality like Excel)......
How do I do this? Pls help!!
button = new JButton( "Add Row" );
buttonPanel.add( button );
button.addActionListener( new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
model.addRow( createRow() );
int row = table.getRowCount() - 1;
table.getColumnModel().getColumn(4).setCellEditor(new
DefaultCellEditor(comboBox));
table.changeSelection(row, 0, false, false);
table.requestFocusInWindow();
}
});
//
button = new JButton( "Up" );
buttonPanel.add( button );
button.addActionListener( new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
int row=table.getSelectedRow();
model.insertRow(row, createRow() );
table.changeSelection(0, 0, false, false);
table.requestFocusInWindow();
}
});
Does this code not work? What is the error or unexpected behaviour?
You can create a custom ActionListener in a class, so you can re-use the
instance (i.e. register the instance mu?tilpe times). You can also call
the ActionListener from the other button IIRC.
In any case, read up on the following:
<http://java.sun.com/docs/books/tutorial/uiswing/events/intro.html>
<http://java.sun.com/docs/books/tutorial/uiswing/events/actionlistener.html>
--
Sabine Dinis Blochberger
Op3racional
www.op3racional.eu