Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 09.04.2010, 20:23
Аватар для AND_REY
AND_REY AND_REY вне форума
Активный
 
Регистрация: 31.03.2009
Адрес: Украина, г.Днепропетровск
Сообщения: 324
Версия Delphi: Delphi7
Репутация: 3877
По умолчанию Нажатие клавиш мышки

Добрый вечер!
Подскажите пожалуйста как отловить одновременное нажатие правой и левой клавиши мыши?

Код:
Function WindowProc(Hw: HWND; Msg: UINT; wParam: WPARAM; lParam: LPARAM): LRESULT; stdcall;
begin
 Result:= 0;
 Case Msg of
    WM_DESTROY:
   begin
    PostQuitMessage(0);
    Result:= 0;
    Exit;
   end;
  WM_LBUTTONDOWN:   MouseLdown(LOWORD(lParam),HIWORD(lParam));
  WM_RBUTTONDOWN:   MouseRdown(LOWORD(lParam),HIWORD(lParam));
  WM_LBUTTONDOWN (And, Or) WM_RBUTTONDOWN: // Неработает 
  Else
   Result:= DefWindowProc(Hw, Msg, wParam, lParam);
 end;
end;
Ответить с цитированием
  #2  
Старый 09.04.2010, 20:35
lmikle lmikle вне форума
Модератор
 
Регистрация: 17.04.2008
Сообщения: 8,093
Версия Delphi: 7, XE3, 10.2
Репутация: 49089
По умолчанию

Ну правильно, что так не работает, т.к. это обработка сообщений и сообщения обрабаиываются по одному за раз. Надо, при приходе сообщения о нажатии кнопочки, получать статус обоих кнопок и, если обе нажаты, делать свои действия. Это самый простой вараиант. Можно руками выставлять флаги для своей прошраммы. Т.е. при приходе сообщения о нажатии левой кнопочки мышы устанавливаем флаг MouseLeft := True; при приходе сообщения о нажатии правой кнопочки мышы устанавливаем флаг MouseRught := True. При приходе сообщения об отжатии кнопочки соответсвующий флаг сбрасывается. Ну и после установки любого из флагов выполняем проверку, что они оба выставлены...
Ответить с цитированием
  #3  
Старый 09.04.2010, 21:23
Аватар для AND_REY
AND_REY AND_REY вне форума
Активный
 
Регистрация: 31.03.2009
Адрес: Украина, г.Днепропетровск
Сообщения: 324
Версия Delphi: Delphi7
Репутация: 3877
По умолчанию

Спасибо, всё получилось совсем забыл о 'флагах'.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 06:06.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025