Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.05;
Скачать: CL | DM;

Вниз

Как узнать состояние кнопки мыши без хука.   Найти похожие ветки 

 
HF-Trade ©   (2006-02-16 11:39) [0]

Как можно узнать состояние кнопки мыши если она находится не над формой?
Нужно чтобы при нажатии средней кнопки выполнялось определенная процедура, можно как нить узнать что кнопка была нажата без использования хука на мышь?


 
КаПиБаРа ©   (2006-02-16 12:03) [1]

SetCapture?


 
КиТаЯц ©   (2006-02-16 12:06) [2]

Было же недавно.... Дублирую:

procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 case Button of
   mbLeft: showmessage("Левая");
   mbRight: showmessage("Правая");
   mbMiddle: showmessage("Средняя");
 end;
end;


 
HF-Trade ©   (2006-02-16 12:18) [3]


> КиТаЯц ©

Это обработчик фомы, а если она у меня свернута, а мне надо знать была ли нажата мышь в другом приложении?

> Как можно узнать состояние кнопки мыши если она находится
> не над формой?


 
begin...end ©   (2006-02-16 12:22) [4]

> Как можно узнать состояние кнопки мыши если она находится
> не над формой?

GetKeyState


 
КиТаЯц ©   (2006-02-16 12:27) [5]


> HF-Trade ©   (16.02.06 12:18) [3]

Ага, точно...
Сорри, уже второй день вопросы наперекосяк читаю... Заработался, блин... :(


 
HF-Trade ©   (2006-02-16 12:34) [6]


> begin...end ©

Чет я ступил))) Я думал там тока для клавы)))
GetAsyncKeyState подошло))))


 
КиТаЯц ©   (2006-02-16 12:35) [7]

Вот, может подойдет:

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if IsKeyDown (VK_MBUTTON) then showmessage("Ё!");
end;

function IsKeyDown(c : Char) : Boolean;
 var vk : Integer;
begin
  vk:=VkKeyScan(c) and $FF;
  if vk<>$FF then
     Result:=(GetAsyncKeyState(vk)<0)
  else Result:=False;
end;



Страницы: 1 вся ветка

Текущий архив: 2006.03.05;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.033 c
2-1139161960
CMOS
2006-02-05 20:52
2006.03.05
Начала ООП


2-1140092704
Конопелька
2006-02-16 15:25
2006.03.05
Управление ошибками !


4-1134461272
Solo
2005-12-13 11:07
2006.03.05
Контрольно-кассовые машины


15-1139678202
Ученик чародея
2006-02-11 20:16
2006.03.05
Как разрядить бумагу, после ее печати на лазерном принтере?


15-1139389168
seg
2006-02-08 11:59
2006.03.05
Когда же перестанут издеваться над автомобилистами?