Вниз
Скачать: CL | DM;

Как запретить стандартную прокрутку от колеса мыши?   Найти похожие ветки 

 
Тфьу   (2006-03-24 13:36) [0]

У меня собственный обработчик на колесо мыши. Все компоненты его слушаются, особенно, если им отключить ScrollBar. Но есть такая штука, как DevExpress, которая в cxDBGrid даже при отключенном скролле реагирует на колесо мыши. Перехват WM_MOUSEWHEEL в Application.OnMessage ничего не дал. Хотя мышу перехватывает...

Пример:
procedure TForm1.AppMessage(var Msg: TMsg; var Handled: Boolean);
begin
 if Msg.message = WM_MOUSEWHEEL then
 begin
   if (Msg.wParam=-7864320)or(Msg.wParam=-23592960)or(Msg.wParam=-15728640) then//down
   begin
     ProgressBar1.Position:=ProgressBar1.Position-1;
   end;
   if (Msg.wParam=7864320)or(Msg.wParam=23592960)or(Msg.wParam=15728640) then//up
   begin
     ProgressBar1.Position:=ProgressBar1.Position+1;
   end;
 end
 else
   inherited;
end;


 
Чародей ©   (2006-03-24 20:00) [1]

procedure TForm1.AppMessage(var Msg: TMsg; var Handled: Boolean);
var
 i: SmallInt;
begin
 {Mouse wheel behaves strangely with dgbgrids - this proc sorts this out}
 if Msg.message = WM_MOUSEWHEEL then
 begin
   Msg.message := WM_KEYDOWN;
   Msg.lParam := 0;
   i := HiWord(Msg.wParam);
   if i > 0 then
      ProgressBar1.Position:=ProgressBar1.Position+1
     //Msg.wParam := VK_UP
   else
      ProgressBar1.Position:=ProgressBar1.Position-1;
     //Msg.wParam := VK_DOWN;

   Handled := False;
 end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnMessage := Form1.AppMessage;
end;

Если надо чтоб колесо воздействовало на BDGride, открой коментарии.



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.025 c
2-1149591976
Dicot
2006-06-06 15:06
2006.06.25
типизированные файлы


3-1146041888
Delphi basic
2006-04-26 12:58
2006.06.25
Crystal Peports из Delphi


8-1137837125
deamon_t
2006-01-21 12:52
2006.06.25
Алгоритм сравнения двух TBitmap


1-1147763722
Бульбаш
2006-05-16 11:15
2006.06.25
Проблемы с крупным шрифтом...


2-1149670850
NikSoft
2006-06-07 13:00
2006.06.25
Панель задач и реестр XP




   Наверх