Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 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
1-1109009885
mariya_mezenceva
2005-02-21 21:18
2005.03.06
fastreport3 (экспорт в excel)


3-1107865579
YurikGL
2005-02-08 15:26
2005.03.06
Запрос на последние данные


11-1089774782
Денис
2004-07-14 07:13
2005.03.06
Перетаскивание на ноду


4-1106224117
Дмитрий Ботвин
2005-01-20 15:28
2005.03.06
Изменение свойств файлов


1-1108995207
red_imp
2005-02-21 17:13
2005.03.06
Как запустить досовую программу с ключами из другой директории





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский