Форум: "Базы";
Текущий архив: 2005.03.06;
Скачать: [xml.tar.bz2];
ВнизРедактирование в DBGrid Найти похожие ветки
← →
Igor_thief (2005-01-30 12:38) [0]Как в DBGrid сделать так, чтобы можно было редактировать только одно поле, а все остальные нет. Я например сделал это таким образом:
procedure TfrmMain.DBGCalculationDrawDataCell(Sender: TObject;
const Rect: TRect; Field: TField; State: TGridDrawState);
begin
with DBGCalculation.Canvas do
begin
...
if Field.Name = DM.tCalculationTCount.Name then
DBGCalculation.Options := DBGCalculation.Options + [dgEditing]
else
DBGCalculation.Options := DBGCalculation.Options - [dgEditing];
end; // if
...
end; // with
DBGCalculation.DefaultDrawDataCell(Rect, Field, State);
end;
У кого есть другие (!!! но более оптимальные) способы решения, поделитесь?
← →
P.N.P. © (2005-01-30 12:41) [1]DBGrid.Columns[x].ReadOnly чем не устраивает?
← →
Anatoly Podgoretsky © (2005-01-30 12:45) [2]P.N.P. © (30.01.05 12:41) [1]
Ну там код писать не надо :-)
← →
Igor_thief (2005-01-30 16:32) [3]P.N.P. © (30.01.05 12:41) [1]
Точно!!! Я провтыкал! Спасибо! Я просто простудился. Я правда никогда не использовал Columns. Работал всегда с полями на прямую.
Anatoly Podgoretsky © (30.01.05 12:45) [2]
:о)
З.Ы.: А мой способ вообще толком не работает. Hoops!
← →
Хруст © (2005-02-01 16:28) [4]двоиной клик на TTable и иже с ним
Add All Fields
и в свойствах выставляешь
ReadOnly -> True(False)
← →
Johnmen © (2005-02-01 18:27) [5]>Хруст © (01.02.05 16:28) [4]
Не надо путать коллекции TFields и TDBGridColumns.
← →
ЮЮ © (2005-02-02 04:06) [6]>З.Ы.: А мой способ вообще толком не работает. Hoops!
Потому что место этому коду не в OnDrawDataCell, а в OnColEnter
← →
Igor_thief (2005-02-02 11:49) [7]Хруст © (01.02.05 16:28) [4]
Тогда эти поля нельзя будет редактировать не только через ДБГрид но и программно тоже.
Колумнс подходит для моей цели лучше. Хотя я привык работать напрямую с TFields, не создавая колонок в DBGrid. Ну ладно, теперь прийдется создать колонки и работать с ними. Хотя это, наверное, даже удобнее.
Всем спасибо!
← →
Соловьев © (2005-02-02 11:51) [8]
> но и программно тоже.
а кто тебе запретил использовать SQL?
← →
Igor_thief (2005-02-02 11:58) [9]Соловьев © (02.02.05 11:51) [8]
Дык я Table юзаю а не Query!
← →
Соловьев © (2005-02-02 12:00) [10]
> Дык я Table юзаю а не Query!
Дык. юзай TQuery и будешь несказанно рад.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2005.03.06;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.046 c