Модераторы: Partizan, gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Проблемка с событием щелчка мышки 
:(
    Опции темы
Alek86
Дата 22.8.2007, 18:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1299
Регистрация: 30.1.2007
Где: Киев

Репутация: 1
Всего: 25



допустим, требуется написать контрол MyCtrl, в котором содержится, допустим, Label

кто может подсказать, как мне ловить щелчек левой кнопкой мышки у MyCtrl, а не у внутреннего Label'а, если мышка находится над Label'ом?

в винде приходилось PreTranslateMessage использовать. Может, здесь есть что получше? или, если нет, то какой здесь аналог PreTranslateMessage?


--------------------
user posted image    user posted image
PM MAIL   Вверх
1stain
Дата 23.8.2007, 17:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 486
Регистрация: 30.7.2007
Где: Киев - Харьков

Репутация: 3
Всего: 40





--------------------
Все знают, что это невозможно. Но вот приходит невежда, которому это неизвестно - он-то и делает открытие. (Albert Einstein)
user posted image
PM MAIL   Вверх
Alek86
Дата 23.8.2007, 18:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1299
Регистрация: 30.1.2007
Где: Киев

Репутация: 1
Всего: 25



спасибо smile
не совсем уверен, что это то самое, но за старание спасибо

Это сообщение отредактировал(а) Alek86 - 23.8.2007, 18:18


--------------------
user posted image    user posted image
PM MAIL   Вверх
tdebugger
Дата 25.8.2007, 22:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 20.1.2007

Репутация: нет
Всего: 4



 Перехватывать сообщения вообще не очень хорошая идея, я думаю, что в .NET более грамотно будет создать у Label обработчик щелчка мыши и добавить такую строку:

base.OnClick(e);
--------------------
ТЕХНОЛОГИЯ "JAVA"  НЕ ПРЕДНАЗНАЧЕНА ДЛЯ УПРАВЛЕНИЯ ЯДЕРНЫМИ УСТАНОВКАМИWindows98 License.txt
PM MAIL MSN   Вверх
Zapozidon
Дата 26.8.2007, 06:29 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 9
Регистрация: 26.8.2007

Репутация: нет
Всего: 1



Цитата(tdebugger @ 25.8.2007,  22:16)
base.OnClick(e);

Может не base, а this? smile
PM MAIL   Вверх
tdebugger
Дата 26.8.2007, 08:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 20.1.2007

Репутация: нет
Всего: 4



Если правильно понял вопрос по теме, то base.
--------------------
ТЕХНОЛОГИЯ "JAVA"  НЕ ПРЕДНАЗНАЧЕНА ДЛЯ УПРАВЛЕНИЯ ЯДЕРНЫМИ УСТАНОВКАМИWindows98 License.txt
PM MAIL MSN   Вверх
1stain
Дата 27.8.2007, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 486
Регистрация: 30.7.2007
Где: Киев - Харьков

Репутация: 3
Всего: 40



Цитата(tdebugger @  25.8.2007,  22:16 Найти цитируемый пост)
 Перехватывать сообщения вообще не очень хорошая идея, я думаю, что в .NET более грамотно будет создать у Label обработчик щелчка мыши и добавить такую строку:base.OnClick(e);


а если аффтар захочет обрабатывать щелчок правой/средней кнопкой, MouseMove, MouseHover, прикажете для каждого события мыши писать обработчик, передающий сообщение своему parent'y?
Предложенное решение представляет собой простой и безгеморройный способ сделать надписи на юзерконтроле прозрачными для событий мыши.


--------------------
Все знают, что это невозможно. Но вот приходит невежда, которому это неизвестно - он-то и делает открытие. (Albert Einstein)
user posted image
PM MAIL   Вверх
tdebugger
Дата 27.8.2007, 13:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 117
Регистрация: 20.1.2007

Репутация: нет
Всего: 4



Согласен, что простой, но безгеморройный и грамотный - это разные вещи...
--------------------
ТЕХНОЛОГИЯ "JAVA"  НЕ ПРЕДНАЗНАЧЕНА ДЛЯ УПРАВЛЕНИЯ ЯДЕРНЫМИ УСТАНОВКАМИWindows98 License.txt
PM MAIL MSN   Вверх
Alek86
Дата 28.8.2007, 18:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1299
Регистрация: 30.1.2007
Где: Киев

Репутация: 1
Всего: 25



хороший метод.
еще вопрос - может кто в курсе

является ли его применение уходом от кроссплатформенности?


--------------------
user posted image    user posted image
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
Partizan
PashaPash

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.
Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :)
Так же не забывайте отмечать свой вопрос решенным, если он таковым является :)


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, Partizan, PashaPash.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | .NET для новичков | Следующая тема »


 




[ Время генерации скрипта: 0.0499 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.