Java SE - пользовательская кнопка (Jcomponent) и ActionListener?

Я реализовал класс MyButton, который расширяет класс Jcomponent. И проблема в том, что у меня есть несколько объектов MyButton в основном классе (реализует ActionListener), и я хотел бы добавить к ним прослушиватель действий.

Как с этим справиться? Итак, я могу использовать addActionListener?

заранее спасибо


person marxin    schedule 22.06.2012    source источник
comment
Если вам нужна функциональность JButton, но в то же время вы хотите что-то добавить к ее функциям, чем расширять саму JButton, зачем расширять JCompoent, которая находится далеко в иерархии. Расширьте класс, который приближается к той функциональности, которая вам нужна, и добавьте еще несколько своих. Название, предложенное вами MyButton для класса, который расширяет JComponent, не дает хороших вибраций, связанных с тем, что вы кодировали. Расширьте JButton, если это то, что вы хотите, с расширенными функциями по вашему выбору. В противном случае вы можете вскоре сами изобретать велосипед для JButton.   -  person nIcE cOw    schedule 22.06.2012


Ответы (1)


  • используйте MouseListener / KeyBindings в случае, если MyButton objects не реализует/наследует методы JButton или AbstractButton

  • если реализует JButton или AbstractButton, вы можете использовать

    a) ButtonModel

    b) Swing Action

    c) ActionListener

  • чтобы получить помощь, опубликуйте SSCCE.

person mKorbel    schedule 22.06.2012