Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.06.25;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.047 c
3-1146076512
makvell
2006-04-26 22:35
2006.06.25
Исключения


15-1148989599
RomanH
2006-05-30 15:46
2006.06.25
SQL сервер TransBase


2-1149681186
фыв
2006-06-07 15:53
2006.06.25
Компонент в определенном месте на поле


6-1132257651
Иван12345
2005-11-17 23:00
2006.06.25
Перехват данных из входящего трафика


2-1149662641
irena
2006-06-07 10:44
2006.06.25
varchar(1024) не сохраняется при использовании TDBMemo