Отлов нажатия на правую клавишу мыши внутри таймера.

Программирование на Visual Basic for Applications
Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Отлов нажатия на правую клавишу мыши внутри таймера.

Сообщение Vitaly1 » 24.03.2004 (Ср) 19:11

У меня сделан проект, в котором могут запускатся различные файл Excel. В проекте сделан таймер, отлавливающий, не открытали одно из окон проекта. И если закрыто, таймер возращает главное меню проекта. Я хочу через этот таймер отлавливать нажатие на правую клавишу.
Вот тут есть только как опрееделить место положение мыши:
http://www.vbstreets.ru/VB/Articles/65542.aspx
А как определить нажатую клавишу мыши, нету. :cry:
Помогите, кто знает. :cry: :cry: :cry:

Vitaly1
Брехман
Брехман
 
Сообщения: 1578
Зарегистрирован: 30.12.2002 (Пн) 16:35
Откуда: Russia, Mosсow

Сообщение Vitaly1 » 26.03.2004 (Пт) 10:29

Наверно увы нельзя, если, конечно в VBA нельзя применить 33 прерывание, и посмотреть регистры компьютера.

CoolCold
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 04.04.2004 (Вс) 8:45

Отловить мышь

Сообщение CoolCold » 04.04.2004 (Вс) 9:18

Не совсем понятно что нужно сделать....нужно сделать реакцию на нажатие клавиши или просто определять нажата кнопка мыши или нет?
если отловить - можно сделать через замену стандартной процедуры обработки сообщений приложения...но это довольно гиморно с той точки зрения что приложение может быть нестабильным(нельзя например использовать end) .

Если просто опредялть нажата/нет то проще всего воспользоваться функцией GetAsyncKeyState

The GetAsyncKeyState function works with mouse buttons. However, it checks on the state of the physical mouse buttons, not on the logical mouse buttons that the physical buttons are mapped to. For example, the call GetAsyncKeyState
(VK_LBUTTON) always returns the state of the left physical mouse button, which may mapped to the left or right logical mouse button. You can determine the system's current mapping of physical mouse buttons to logical mouse buttons by calling

GetSystemMetrics(SM_SWAPBUTTON)


which returns TRUE if the mouse buttons have been swapped.

ну и т.д.,в справке все это есь.


Вернуться в VBA

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 117

    TopList