как сделать ячейку disabled

gore-egor
Дата: 13.02.2013 09:53:22
Здравствуйте.
как в зависимости от условия
сделать ячейку грид недоступной?
это не выдает ошибки и не работает
Thisform.Grid2.Column3.SetAll("Enabled","IIF(tab1.kod)='314','.F.','.T.')","TEXT1")   
запихнул это в init() grid2
Dima T
Дата: 13.02.2013 10:01:01
Попробуй прописать в Thisform.Grid2.Column3.Text1.GotFocus()
This.Enabled = (tab1.kod != '314')

или так
This.ReadOnly = (tab1.kod = '314')
gore-egor
Дата: 13.02.2013 10:11:21
Dima T,
благодарю ))
это
This.Enabled = (tab1.kod != '314')
подходит

а это почему-то нет ((
This.ReadOnly = (tab1.kod != '314')
Dima T
Дата: 13.02.2013 10:14:27
gore-egor
а это почему-то нет ((
This.ReadOnly = (tab1.kod != '314')

Я не так написал. У меня = было.
gore-egor
Дата: 13.02.2013 10:20:37
Dima T,

да, правда. туплю, тщательнее надо читать ))
gore-egor
Дата: 13.02.2013 13:14:30
Dima T
Попробуй прописать в Thisform.Grid2.Column3.Text1.GotFocus()
This.Enabled = (tab1.kod != '314')
не, плохо работает ((
как только попадаешь на эту ячейку,
т.е. случайно щелкаешь по ней,
блокируются и все остальные
Dima T
Дата: 13.02.2013 13:31:34
а с ReadOnly ?
gore-egor
Дата: 13.02.2013 13:53:52
Dima T,

вообще ничего не делает
gotfocus в топку
Dima T
Дата: 13.02.2013 14:03:54
Встроенных средств запрета правки ячейки нет. Все настройки распространяются на весь столбец грида. Надо только их ставить и снимать своевременно.
Попробуй в LostFocus() добавить возвращение исходного состояния
...ReadOnly = .F.
...Enabled = .T.

Только после Enabled = .F. перестают вызываться GotFocus()/LostFocus()
Как вариант вставить возврат в Grid.AfterRowColChange()

Еще вариант можешь заблокировать ввод с клавиатуры.
Thisform.Grid2.Column3.Text1.KeyPress()
if tab1.kod = '314'
   nodefault
endif
Людмila
Дата: 14.02.2013 00:38:10
добилась чего-то подобного изобразив в методе Grid.ColumnN.text1.When
thisform.grid1.columnN.ReadOnly= ну и любое условие, типа tableName.Kod='314'