Обработка щелчка мыши

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
sacrifice
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 30.01.2008 (Ср) 1:14

Обработка щелчка мыши

Сообщение sacrifice » 30.01.2008 (Ср) 1:17

Здравствуйте!

Столкнулся с проблемкой, поиск и чтение мануалов пока не привели к результату, может если кто знает или сталкивался с этим - подскажите, пожалуйста, как быть.


Приложение активно (основная форма активна), на форме множество всяких checkbox'ов, кнопок, надписей. Нужно написать обработчик для щелчка правой кнопки мыши, но учитывая то что курсор мышки может находится где угодно (не факт что на форме программы). И еще очень не хочется писать одинаковый обработчик щелчка правой кнопки мыши для каждого элемента на форме (надписи, кнопки), может можно их как-то объединить.


Заранее спасибо.

Lumen
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 841
Зарегистрирован: 03.12.2005 (Сб) 16:09
Откуда: Брянск

Сообщение Lumen » 30.01.2008 (Ср) 2:16

Хук на мышь?
Подпись проходит рефакторинг

kibernetics
Постоялец
Постоялец
Аватара пользователя
 
Сообщения: 945
Зарегистрирован: 03.05.2006 (Ср) 13:31
Откуда: Minsk

Сообщение kibernetics » 30.01.2008 (Ср) 10:52

sacrifice писал(а):поиск и чтение мануалов пока не привели к результату

ой ли? :wink:

sacrifice писал(а):учитывая то что курсор мышки может находится где угодно

зачем тебе это учитывать?
тебе скорей всего достаточно только события MouseUp для контрола, и в нём проверяй:
Код: Выделить всё
Private Sub контрол_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = vbRightButton Then
'нажата правая кнопка мышатины
...
End If
End Sub


когда поймёшь принцип, разберёшься и с оптимизацией повторяющегося кода

sacrifice
Начинающий
Начинающий
 
Сообщения: 2
Зарегистрирован: 30.01.2008 (Ср) 1:14

Сообщение sacrifice » 30.01.2008 (Ср) 16:45

kibernetics писал(а):
sacrifice писал(а):поиск и чтение мануалов пока не привели к результату

ой ли? :wink:

sacrifice писал(а):учитывая то что курсор мышки может находится где угодно

зачем тебе это учитывать?
тебе скорей всего достаточно только события MouseUp для контрола, и в нём проверяй:
Код: Выделить всё
Private Sub контрол_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button = vbRightButton Then
'нажата правая кнопка мышатины
...
End If
End Sub


когда поймёшь принцип, разберёшься и с оптимизацией повторяющегося кода




ты ничего не понял, мне не достаточно только события MouseUp для контрола, мне нужно "глобально", даже если кликнул правой кнопкой по кнопке "Пуск" или окну другого приложения... проблема уже решилась, помогли на vbnet.ru

Но все равно, спасибо! :)


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: SemrushBot, Yandex-бот и гости: 80

    TopList