Главная страница
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.042 c
15-1139490614
PARUS
2006-02-09 16:10
2006.03.05
Нажатие.


3-1137025928
Kromwerk
2006-01-12 03:32
2006.03.05
Преобразование времени


2-1140356030
_shark_@list.ru
2006-02-19 16:33
2006.03.05
Уважаемые мастера, подскажите пожалуйсто, как можно прочитать из


4-1134564762
MU
2005-12-14 15:52
2006.03.05
Служба


2-1140312344
us es
2006-02-19 04:25
2006.03.05
Юнит ваще без uses - хорошо, или нужно что-то добавить?