powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Как добавить MouseListener если метод addMouseListener не поддерживается
9 сообщений из 9, страница 1 из 1
Как добавить MouseListener если метод addMouseListener не поддерживается
    #33786268
bemtaill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем!
Вопрос: я уналдовал класс MyTrayIcon от TrayIcon c имплементацией интерфейса MouseListener для того чтобы реализовать обработку двойного клика на иконке в трее. Но в TrayIcon нет addMouseListener и соответственно и в MyTrayIcon его тоже нет. Как быть в этом случае?


ЗЫ: TrayIcon - класс из библиотеки JDIC https://jdic.dev.java.net/
...
Рейтинг: 0 / 0
Как добавить MouseListener если метод addMouseListener не поддерживается
    #33788092
bemtaill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ок. Перефразирую.

Возможно ли добавление произвольного Listener'a к произвольному классу не поддержедривающему метод addXXXListener?

Точнее я понимаю что если метода нет то не добавить:) Короче меня интресует как быть в ситуации когда класс не имеет методов для добавления listener'ов но их хотелось бы поиметь... В хорошем смысле этого слова.
...
Рейтинг: 0 / 0
Как добавить MouseListener если метод addMouseListener не поддерживается
    #33789786
bemtaill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Продолжаю беседовать сам с собой.

Короче видимо решение состоит в том чтобы расширить свой класс от Component и тогда он будет иметь данные методы...

Спасибо всем за помощь:)
...
Рейтинг: 0 / 0
Как добавить MouseListener если метод addMouseListener не поддерживается
    #33789796
Фотография Pitbull terrier
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что-то я не пойму, в чем проблема =)

>>Возможно ли добавление произвольного Listener'a к произвольному классу не поддержедривающему метод addXXXListener?

да!
заводите свой метод addXXXListener, складываете их (листенеры) в лист
как только что-то происходит - перебираете лист и оповещаете листенеры
...
Рейтинг: 0 / 0
Как добавить MouseListener если метод addMouseListener не поддерживается
    #33789818
Фотография Pitbull terrier
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кажется, начинаю въезжать

>>класс MyTrayIcon от TrayIcon c имплементацией интерфейса MouseListener для того чтобы реализовать обработку двойного клика на иконке в трее

т.е. есть некий код, выполняющийся при клике?
в нем можно реализовать обработку своих листенеров, которые добавляются/удаляются из списка самописными методами
...
Рейтинг: 0 / 0
Как добавить MouseListener если метод addMouseListener не поддерживается
    #33789891
bemtaill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pitbull terrierкажется, начинаю въезжать
....
т.е. есть некий код, выполняющийся при клике?
в нем можно реализовать обработку своих листенеров, которые добавляются/удаляются из списка самописными методами

О. А как реализовать самописные методы для добавления/удаления листенеров в/из списка? Ссылкой не поделитесь/или примерчик какой-нить...
...
Рейтинг: 0 / 0
Как добавить MouseListener если метод addMouseListener не поддерживается
    #33789936
bemtaill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pitbull terrierкажется, начинаю въезжать
т.е. есть некий код, выполняющийся при клике?

есть некий код, который нужно заставить выполнятся при двойном клике.
...
Рейтинг: 0 / 0
Как добавить MouseListener если метод addMouseListener не поддерживается
    #33789955
Фотография Pitbull terrier
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
что-то вроде этого:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
 import  java.awt.event.MouseEvent;
 import  java.awt.event.MouseListener;
 import  java.util.ArrayList;
 import  java.util.Iterator;
 import  java.util.List;

 public   class  IHaveMouseListeners
{
    List listeners =  new  ArrayList();

     public   void  addListener(MouseListener listener)
    {
        listeners.add(listener);
    }

     public   void  removeListener(MouseListener listener)
    {
        listeners.remove(listener);
    }

    /**
     * Mouse was clicked somewhere, and you want to let your listeners know
     * about this
     */
     private   void  fireMouseClicked(MouseEvent me)
    {
        Iterator iter = listeners.iterator();
         while  (iter.hasNext())
        {
            MouseListener listener = (MouseListener) iter.next();
            listener.mouseClicked(me);
        }
    }
}


как я понял, твой компоненит уже реализует MouseListener
в соотв. методах просто вызываешь свои fireXXX, передавая в них ивенты
...
Рейтинг: 0 / 0
Как добавить MouseListener если метод addMouseListener не поддерживается
    #33789995
bemtaill
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / Как добавить MouseListener если метод addMouseListener не поддерживается
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]