Здравствуйте, Dali, Вы писали:
D>У меня такой вопрос. Я создала класс:
D> private class SDragDropLabel extends SLabel implements DropTarget, DragSource {...}.
D>Необходимо, чтобы при нажатии мыши на объект этого класса происходило событие. Т.е. мне надо применить к объектам метод addActionListener (или возможно метод другого Листенера). Но я не знаю как прописать в моем классе эти методы, чтобы их можно было использовать для его обьектов.
Я не совсем понял в чем проблема, но может у тебя возникло недопонимание, как сделать это:
public class SDragDropLabel extends SLabel implements DropTarget, DragSource {
private List<ActionListener> listeners = new ArrayList<ActionListener>();
public void addListener(ActionListener listener) {
listeners.add(listener);
}
public void removeListener(ActionListener listener) {
listeners.remove(listener);
}
private void fireEvent(ActionEvent event) {
for(ActionListener listener: listeners) {
listener.actionPerformed(event);
}
}
// ...
}
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
It is always bad to give advices, but you will be never forgiven for a good one.
Oscar Wilde