powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / Сброс счётчика нажатий клавиши мыши.
17 сообщений из 42, страница 2 из 2
Сброс счётчика нажатий клавиши мыши.
    #39482539
Фотография burgos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123burgosPetro123,
При закрытии окна фокус автоматически устанавливается на элементе предидущего окна, который имел фокус в момент вызова.
да. И что?
Ну и этот элемент (в данном случае таблица( ловит слелующий клик с evt.getClickCount() == 2.
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482546
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
burgosНу и этот элемент (в данном случае таблица( ловит слелующий клик с evt.getClickCount() == 2.
нет.
Выведи сюда логи кликов.
Ты обязан тестить что говороят юзвери у себя сам.
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482548
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123не понял.
По данному ВИ должно прийти ОДНО событие DoubleClick - и показ модального на экране.
При закрытии один клик уходит на кнопку диалога, диалог закрывается, а потом второй клик уходит на родительское окно. Всё потому что кнопку по-умолчанию отрабатывает на mouseReleased, поэтому clickCount второго клика начинается с 0, а не 1, так как это уже событие не диалога, а родителя.

Вообще на багу Swing-а похоже. Надо подумать как обойти.
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482551
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123не понял.
По данному ВИ должно прийти ОДНО событие DoubleClick - и показ модального на экране.
DoubleClick формируется из двух MouseReleased на одном окне. Из-за того что мы закрываем окно, у нас выходит не DoubleClick, а два разных Click.
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482553
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
burgosНу и этот элемент (в данном случае таблица( ловит слелующий клик с evt.getClickCount() == 2.
У меня там Click Count 1 на таблице, а не 2. Какая версия Java?
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482556
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczВообще на багу Swing-а похоже. Надо подумать как обойти.
Я clickCount никогда не использовал и не врубаюсь зачем оно.
События в ОСи - 2 штуки
- сначали клик и выделяем строку таблы
- за ним двойнойКлик
Это на простой DoubleClick (придёт 2 события)
Как там в свинге не знаю.
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482573
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Я clickCount никогда не использовал и не врубаюсь зачем оно.

Бывает.

Petro123События в ОСи - 2 штуки
- сначали клик и выделяем строку таблы
- за ним двойнойКлик
Это на простой DoubleClick (придёт 2 события)

У AWT два события из OS - кнопка нажата и отпущена. Событие клик AWT формирует сам.

Petro123Как там в свинге не знаю.
С этого надо было начинать.
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482585
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczСобытие клик AWT формирует сам.
Вопрос был, КАКИЕ формирует?
DoubleClick нет?
Это странно, т.к. из оси они выходят)
BlazkowiczС этого надо было начинать.
А что это меняет в вопросе ТС'a.
События ждут пока юзверь закроет окно?
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482604
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Вопрос был, КАКИЕ формирует?
DoubleClick нет?
Это странно, т.к. из оси они выходят)

Я привел ссылку на класс, который формирует Double Click. Что тебе странно?

Petro123А что это меняет в вопросе ТС'a.
События ждут пока юзверь закроет окно?
GUI работает в одном потоке, прикинь.
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482606
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123, зафлудил, блин, обе темы, распугал всех кто вопросы постит. Фи таким быть.
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482611
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
burgos,

Есть вариант не сразу закрывать диалог, а с задержкой. В обработке события закрытия, дизаблим весь диалог, чтобы юзер не натыкал лишнего. Потом запускаем фоновую задачу, которая через 500ms (а лучше awt.multiClickInterval) вызовет dispose или setVisible(false), как вы там привыкли закрывать. Можно через Thread.sleep(), можно через SchedulerExecutor, можно через SwingWorker

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
                       @Override
                       public void actionPerformed(ActionEvent e) {
                           new SwingWorker<Void, Void>(){

                               @Override
                               protected Void doInBackground() throws Exception {
                                   Thread.sleep(500);
                                   return null;
                               }

                               @Override
                               protected void done() {
                                   dialog.dispose();
                               }
                           }.execute();
                       }
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482623
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczGUI работает в одном потоке, прикинь.
а события приходят АСИНХРОННО прикинь
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482625
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BlazkowiczPetro123, зафлудил, блин, обе темы, распугал всех кто вопросы постит. Фи таким быть.
"Юпитер, ты сердишься, значит, ты не прав"
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482628
Фотография burgos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,

У меня случилась похожая идея, только не с закрытие а с активацией. Соорудить мораторий в X-милисекунд на клик, если пришел раньше значит наследован от предыдущего окна и игнорируется. Завтра попробую. Сегодня уже фсе. Летнее расписание. :)
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482629
Фотография Blazkowicz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123а события приходят АСИНХРОННО прикинь
Приходят тоже синхронно. У винды один поток на UI. У свинга один поток на обработку.
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39482633
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Blazkowicz,
ну дак распиши очерёдность событий свинга. Я тебе для винды описал.
ТС'у логи лень приводить.
...
Рейтинг: 0 / 0
Сброс счётчика нажатий клавиши мыши.
    #39483146
Фотография burgos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сделал. При получении фокуса таблица фиксирует момент события. Если следующий клик происходит ранее чем 0,2 сек, то выполняется consume(). Как выяснилось (по крайней мере я этого не знал) consume() не прерывает выполнение Listener-ов, так что везде, где анализируется evt.getClickCount() == 2 добавлено && !evt.isConsumed().
Вроде функционирует...
...
Рейтинг: 0 / 0
17 сообщений из 42, страница 2 из 2
Форумы / Java [игнор отключен] [закрыт для гостей] / Сброс счётчика нажатий клавиши мыши.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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