Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Методы DBGrid или DataSet? [D7, IB5.x, Paradox]


Wood ©   (2004-11-23 06:27:00) 

Уважаемые мастера, подскажите, пожалуйста, в каком методе таблицы (DBGrid) или методе DataSet надежнее и оптимальнее проводить какую-либо проверку? Например, в процедуре DBGrid1DrawColumnCell я проверяю булевое поле, и если значение True, то эта строка в таблице рисуется красным цветом. К таблице имеется контекстное меню (PopupMenu). В этой же процедуре при данной проверке некоторые строки меню должны быть не активны, но на деле, происходит это не всегда. Почему прорисовка  происходит постоянно, а активность строк меню "через раз срабатывает"? В
процедуре DBGrid1DrawDataCell и того хуже. Помогите разобраться. Спасибо.


Wood   (2004-11-24 04:40:00) [1]

>KSergey >msguns
Не ожидал, что еще ответы будут. В моем случае OnPopup был не нужен, там какая-то сложная настройка строк меню с разными вариантами, но это не важно, все равно, спасибо.
>msguns
Согласен, TActionList удобная штучка, я периодически использую его, в основном, для главного меню формы и для открытия дополнительных приложений, типа калькулятор и пр.


msguns   (2004-11-23 10:25:00) [2]

Работай через TActionList+ TAction`s. Удобство в централизации обработки событий.


KSergey   (2004-11-23 09:41:00) [3]

А может правильнее будет на OnPopup потавить настройку меню?


Wood   (2004-11-23 08:22:00) [4]

>>ЮЮ[1]
Замечательно, все работает!


Wood   (2004-11-23 08:13:00) [5]

>>ЮЮ
Спасибо, попробую сечас в AfterScroll'е это сделать


ЮЮ   (2004-11-23 07:47:00) [6]

>Почему прорисовка  происходит постоянно, а активность строк меню "через раз срабатывает"?

Потому что рисуется не текущая запись, а все строки в гриде и поэтому состояние строк меню соответствует не текущей записи, а последней нарисованной. настройку строк меню поставь, естестаенно, в DataSet.AfterScroll


Наверх

Титульная страница Поиск, карта сайта Написать письмо