![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как сделать чтобы в DBGrid работала колесо мыши?
APXi © (2004-03-05 18:57:00)Как сделать чтобы в DBGrid работала колесо мыши?
Anatoly Podgoretsky (2004-03-08 08:50:00) [1]KA_ © (06.03.04 15:49) [9]
Да помогает, при том будет не только грид работать и многое другое, например редакторы, которые на это не расчитаны, да и сама прокрутка будет приятнее работать, например в активном проводнике или почте уже не потребуется тыкать мышкой в окно, а достаточно будет просто переместить указатель на нужное подокно и прокрутить. Без установки драйвера, прокрутка идет только в том подокне, которое активно.
Navi (2004-03-08 08:45:00) [2]Ну так а чего добавлено в RxDBGrid, что она колесо понимает?
Германн (2004-03-07 21:57:00) [3]2 Anatoly Podgoretsky © (06.03.04 12:01) [7]
Не поможет :((
RxDBGrid тоже умеет работать с колесом.
Maverick (2004-03-06 18:03:00) [4]Поставь DevExpress Quantum Grid и не заморачивайся... Там не только это, но даже вариант с залипанием колесика реализовано.... ну когда жмешь - появляется круг со стрелками и можно просто мышей работать вверх-вниз....
И еще множество других возможностей...
KA_ (2004-03-06 15:49:00) [5]>asp © (06.03.04 11:30) [6]
>Можно переопределить TCustomGrid.DoMouseWheelUp, TCustomGrid.DoMouseWheelDown or TWinControl.DoMouseWheel
Ничего хорошего из этого не получится. Придется перекомпилировать другие модули VCL, которые используют указанные классы. Иначе их (модули) невозможно будет использовать - Unit <element> was compiled with a different version of <element>.<element>
>Anatoly Podgoretsky © (06.03.04 12:01) [7]
Помогает?
>JibSkeart © (06.03.04 12:07) [8]
И ташить в код чужую либу? Не всегда хорошее решение, к сожалению.
>Алхимик © (05.03.04 19:42) [3]
Можно так (для D7)
TmyDBGrid = class(TDBGrid)
published
property OnMouseWheel;
end;
а в обработчике делай что хочешь :)
JibSkeart (2004-03-06 12:07:00) [6]или поставить DBGridEh :))
Anatoly Podgoretsky (2004-03-06 12:01:00) [7]Поставить нормальный драйвер мыши, например Intelli Mouse и забыть про проблему.
asp (2004-03-06 11:30:00) [8]Можно переопределить
TCustomGrid.DoMouseWheelUp, TCustomGrid.DoMouseWheelDown or TWinControl.DoMouseWheel
Vemer (2004-03-05 20:03:00) [9]Берешь ApplicationEventer и в его onMessage вписываешь:
If Msg.message = WM_MOUSEWHEEL then
begin
Msg.message := WM_KEYDOWN;
Msg.lParam := 0;
If SmallInt(HiWord(Msg.wParam)) > 0 then
Msg.wParam := VK_UP
else
Msg.wParam := VK_DOWN;
Handled := False;
end;
теперь у тебя в проге колесо как кнопки вверх/вниз работает...
APXi (2004-03-05 19:55:00) [10]>> Либо писать наследника
А какие сообщения от колесика мыши надо обрабатывать?
Алхимик (2004-03-05 19:42:00) [11]Либо писать наследника, либо искать другой компонент. ИМХО.
APXi (2004-03-05 19:15:00) [12]Ну чтобы записи прокручивались колесом.
Алхимик (2004-03-05 19:12:00) [13]В смысле?
Быстренько уточните проблему, а то придёт грозный АП.