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

Вниз

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

 
MadGhost ©   (2005-01-24 21:44) [0]

в StringGrid есть два столбца, один столбец значение, второй параметр, так вот, как сделать так чтобы в первом столбце запретить редактирование, а во втором можно было?

заранее спасибо.


 
dimaxx ©   (2005-01-24 21:56) [1]

Через OnSetEditText

procedure(Sender: TObject; ACol, ARow: Longint; const Value: String) of object;

Проверяем ACol. Если ACol=2, то делаем добавление в Options параметра goEditing. Иначе - убираем этот параметр.


 
begin...end ©   (2005-01-24 22:03) [2]

> MadGhost ©   (24.01.05 21:44)

Обрабатывайте событие TStringGrid.OnSelectSell и в зависимости от номера столбца выбираемой ячейки включайте/исключайте из свойства TStringGrid.Options значение goEditing.

Пример:

procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol,
 ARow: Integer; var CanSelect: Boolean);
begin
 with (Sender as TStringGrid) do
   if (ACol = 1) and (goEditing in Options) then
     Options := Options - [goEditing]
   else if (ACol = 2) and not (goEditing in Options) then
     Options := Options + [goEditing]
end


Кстати, если таблица только из этих двух столбцов и состоит, то лучше заменить её на компонент TValueListEditor - он как раз для таких целей и предназначен.

> [1] dimaxx ©   (24.01.05 21:56)

После исключения goEditing обработчик TStringGrid.OnSetEditText, вероятно, больше вызываться не будет.


 
MadGhost ©   (2005-01-24 22:40) [3]

> begin...end ©   (24.01.05 22:03) [2]

вау :) при большущее спасибо :), большего и желать нельзя :) тот самый компонент который нужен :) и без геморою.
спасибо.



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

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

Наверх




Память: 0.47 MB
Время: 0.045 c
4-1102968498
Mihey_temporary
2004-12-13 23:08
2005.02.06
Hook wanted


1-1106417243
InTr
2005-01-22 21:07
2005.02.06
Поле ввода/редактирования, подобное вордовому


4-1103363509
Начинающий2
2004-12-18 12:51
2005.02.06
Как узнать, работает программа под админом или под юзером?


1-1106668601
CAMCOH
2005-01-25 18:56
2005.02.06
Русские буквы в форме


14-1105937927
megabyte-ceercop
2005-01-17 07:58
2005.02.06
Ура! Меня на DTF приняли! (Портал Геймдевелоперов) :)