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

Вниз

Mouse.Button=mbNone   Найти похожие ветки 

 
BelchonokH ©   (2003-10-12 18:17) [0]

Доброго вам!!! Такая вещь, может это в КОЛ ошибка, надо по нажатию левой кнопки мыши делать что-то... работает только

 procedure TForm1.Panel1MouseMove(Sender: PControl;
 var Mouse: TMouseEventData);
begin
If Mouse.Button=mbNone Then
...

причём только на левую кнопку, любые другие константы, типа mbLeft или mbRight, ничего не дают, как-будто ничего и не нажимали...


 
Gandalf ©   (2003-10-12 20:53) [1]

Если не баг то фича.
Дело в том что в KOL Button делается руками, а надо кодом вида.

function WndProcMouse(Self_: PControl; var Msg: TMsg; var Rslt: Integer): Boolean;
var MouseData: TMouseEventData;
begin
 Result := False;
 if (Msg.message >= WM_MOUSEFIRST) and (Msg.message <= $20A {WM_MOUSELAST}) and
    (Msg.hwnd = Self_.fHandle) then
 with MouseData do
 begin
   Shift := Msg.wParam;
   if GetKeyState( VK_MENU ) < 0 then
      Shift := Shift or MK_ALT;
   X := LoWord( Msg.lParam );
   Y := HiWord( Msg.lParam );
   Button := mbNone; // <- Вот потому и не пашет
   StopHandling := FALSE;
   Rslt := 0; // needed ?
   case Msg.message of
   ...    WM_MOUSEMOVE:
     if Assigned( Self_.OnMouseMove ) then
     begin
        MouseData.Button:=TMouseButton(Msg.wParam); // А вот так пашет
        Self_.OnMouseMove( Self_, MouseData );
     end;


Думаю это код надо поставить в верху, что он был для всех и не мучаться вещами вида Button:=mbLeft и т.п. Потому как наскольку помню wParam там везде один...



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

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

Наверх




Память: 0.47 MB
Время: 0.023 c
14-1081315094
Vint
2004-04-07 09:18
2004.05.02
сегодня праздник


14-1081790762
Nikolay__
2004-04-12 21:26
2004.05.02
Анализ элекрических принципиальных схем


6-1079002166
_Guest_
2004-03-11 13:49
2004.05.02
MS Loopback Adapter


1-1081761086
Ш-К
2004-04-12 13:11
2004.05.02
String


1-1081858010
ЕвгенийК
2004-04-13 16:06
2004.05.02
Обладатели Delphi 5 или BCB 5 дайте DsgnIntf.dcu PLS!