Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.10.16;
Скачать: CL | DM;

Вниз

Как пометить записи в наборе только для чтения?   Найти похожие ветки 

 
Hose   (2003-09-26 10:36) [0]

Есть некая табличка, которая имеет атрибут "RO". Надо чтоб пользователь мог пометить записи в сетке "ПТИЧКОЙ" (ну не хочет заказчик пользоваться мультиселектом). Первое, что приходит в голову, это создать в наборе поле, в котором и хранить признак записи помечена/непомечена и нормально отображать все это в сетках и прочих компонентах. Но мои попытки реализации сего алгоритма не увенчались пока успехом.
Я вот точно помню, что подобное здесь уже пробегало когда-то. Не могу найти. :(( Прошу ткнуть меня носом в описание требуемого мне решения или просто подскажите с какой стороны грамотнее зайти. До сих пор я пытаюсь решить проблему разработкой собственного наследника TField.

Спасибо.


 
Nikolay M. ©   (2003-09-26 10:58) [1]

Тупое, не самое красивое решение:
создаешь Calculated-поле, которое будет принимать значение True, если ID присутствует в некотором вспомогательном массиве (SelectedIDs : array of integer), или False, если его там нет.
В DBGrid ловишь OnDblClick, проверяешь SelectedIDs на наличие в нем текущей записи и делаешь ВычислимоеПоле := not ВычислимоеПоле и добавляешь или удаляешь ID из этого массива. Ну, а о том, как нарисовать в DBGrid вместо True/False стандартную виндовую галочку, писалось не один раз...


 
Mike Kouzmine ©   (2003-09-26 11:12) [2]

А ты поставь р/о на уровне полей, а не таблицы, а птичку сделай не р/о.



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

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

Наверх




Память: 0.47 MB
Время: 0.019 c
14-51510
Wild
2003-09-27 12:32
2003.10.16
KDevelop (Не могу разобраться)


1-51220
Magisimus
2003-09-30 19:56
2003.10.16
Как проверить существует ли компонент, по handl у?


1-51280
Максим
2003-10-07 09:44
2003.10.16
Остановка процедуры !!!


7-51544
dataMaster
2003-08-01 15:24
2003.10.16
Хранитель экрана: запуск и выход


1-51288
Ne razbiraus
2003-10-06 16:12
2003.10.16
MiniHelp