Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];

Вниз

Скролл "колесиком" в DBGrid работает только в видимой части грида   Найти похожие ветки 

 
Michael5   (2005-10-06 20:52) [0]

Несмотря на то, что с помощью полосы прокрутки нормально проматывается. А мышью выделение переходит от одной ячейки к другой только в пределах изображенных в данный момент в гриде части данных, и не заставляет его проматываться...
Подскажите пожалуйста!


 
Michael5   (2005-10-06 20:53) [1]

Подскажите, как заставить его проматываться мышью...


 
Loginov Dmitry   (2005-10-06 20:59) [2]

Мышка глючит с DBGrid (DBGrid - наследник своего родителя:), и в нем просто забыли обработать перемотку колесиком. Смирись :)


 
Michael5   (2005-10-06 21:01) [3]

Ничего себе! :)
Стало быть, свой компонент делать...


 
sniknik ©   (2005-10-06 21:10) [4]

угу, 5 строк дописать. тяжко тебе придется... ;)

type
 TMyDBGrid = class(TDBGrid);

 TForm1 = class(TForm)
   ...
 private
   procedure GrigMouseWheel(Sender: TObject; Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
   ...
 end;

procedure TForm1.GrigMouseWheel(Sender: TObject; Shift: TShiftState; WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
begin
 with TDBGrid(Sender).DataSource.DataSet do
 if Active then begin
   if WheelDelta > 10 then Prior;
   if WheelDelta < -10 then Next;
   Handled:= true;
 end;                            
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 TMyDBGrid(DBGrid1).OnMouseWheel:= GrigMouseWheel;
end;


кстати там не забыли, там просто так оригинально обрабатывают.


 
sniknik ©   (2005-10-06 21:15) [5]

кстати если будеш это как компанент оформлять не забудь еще проверку на то, что у грида вообще источник есть (DataSource)
здесь > with TDBGrid(Sender).DataSource.DataSet do
а можно и перестраховаться и еще у него датасет проверить ;)


 
Michael5   (2005-10-06 21:15) [6]

Спасибо большое :)
Стану в чем-нибудь мастером - тоже буду помогать людям...


 
Michael5   (2005-10-06 21:15) [7]

[5]

Ага, учту!


 
jiny   (2005-10-06 21:30) [8]

в принципе можно и DbGridEh установить - более удобен в настройках, нет проблем с "колесиком" и куча всяких дополнительных наворотов.


 
Michael5   (2005-10-06 21:50) [9]

То ли у меня руки кривые, то ли что, но пробовал я этот компонент - какие-то сложности были, глюки, например, мерцание грида, если добавляешь bmp в ячейку грида (могу путать DbGridEh с Rx библиотекой)... И вообще не идеальный компонент, в своем виде. Хочется сделать такой же, но свой, и доработать... Что лишний раз доказывает, что свое, родное (пусть иногда и кривое) не заменить чужим :) Дело вкуса.


 
jiny   (2005-10-07 09:55) [10]

Скорее всего ты чего то путаешь, у меня уже 3 проекта на DbGridEh написано и ни один не глючит в части грида.


 
Германн ©   (2005-10-07 15:54) [11]

2 sniknik ©   (06.10.05 21:10) [4]

>кстати там не забыли, там просто так оригинально обрабатывают.

Не. Именно забыли переопределить процедуры DoMouseWheelUp & DoMouseWheelDown.



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

Форум: "Базы";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.04 c
11-1096632274
Дмитрий Галин
2004-10-01 16:04
2005.11.20
TChart и KOL


11-1110221256
Shanker
2005-03-07 21:47
2005.11.20
Проблемы с установкой Socket


2-1130428006
Bogdan1024
2005-10-27 19:46
2005.11.20
ООПрограммирование


4-1126989851
NikNet
2005-09-18 00:44
2005.11.20
Запрет на выключение/перезагрузки, компьютера


14-1130769498
Андрей Жук
2005-10-31 17:38
2005.11.20
Подскажите, как писать характеристику





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский