powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как запретить прокрутку колесом мыши в сетке DBGridEh?
5 сообщений из 5, страница 1 из 1
Как запретить прокрутку колесом мыши в сетке DBGridEh?
    #39671209
svnvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подсмотрел вот такое решение, но оно работает только когда мышь находится внутри сетки. Если мышь за пределами сетки, крутишь колесо, и сетка прокручивается.

1. На конструкторе формы:
Код: pascal
1.
2.
   FGridWndProc := DBGridEh1.WindowProc;
   DBGridEh1.WindowProc := DbGridWindowProc;


Новый обработчик:
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
procedure TAnyForm.DbGridWindowProc(var Msg: TMessage);
begin
   case Msg.Msg of
      WM_MOUSEWHEEL:
         exit;
   end;

   if Assigned(FGridWndProc) then
      FGridWndProc(Msg);
end;
...
Рейтинг: 0 / 0
Как запретить прокрутку колесом мыши в сетке DBGridEh?
    #39671378
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svnvlad,

Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
  public
    procedure MouseWheelHandler(var Message: TMessage); override;

procedure TForm1.MouseWheelHandler(var Message: TMessage);
begin
  if not (ActiveControl = DBGridEh1) then
    inherited MouseWheelHandler(Message);
end;
...
Рейтинг: 0 / 0
Как запретить прокрутку колесом мыши в сетке DBGridEh?
    #39671525
svnvlad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ma1tus, спасибо, работает!
Есть еще одна интересная задача, обратная:
Сейчас в дельфи нужно обязательно щелкнуть по компоненту, чтобы он приобрел фокус.
А сейчас модно, чтобы компонент приобретал фокус по наведению мыши, т.е. достаточно, чтобы мышь находилась над компонентом, и можно скроллить. Как это сделать?
...
Рейтинг: 0 / 0
Как запретить прокрутку колесом мыши в сетке DBGridEh?
    #39671528
Valery_B
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svnvlad,

Тоже самое, только с методом ControlAtPos ?
...
Рейтинг: 0 / 0
Как запретить прокрутку колесом мыши в сетке DBGridEh?
    #39671601
ma1tus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
svnvlad интересная задачану, как скажете ...
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Как запретить прокрутку колесом мыши в сетке DBGridEh?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]