|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
25.11.2010, 15:39 | #1 |
Пользователь
Регистрация: 19.02.2008
Сообщений: 24
|
Как программно запретить редактирование ячейки в DBGrid
Здравствуйте, уважаемые.
Как ячейку в DBGrid сделать кнопкой, т.е. программно запретить её редактирование. Особенно это актуально сразу после добавления записи, хотя сделан Post, а сама ячейка в режиме ReadOnly:=True. |
25.11.2010, 16:48 | #2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
ReadOnly:=True должно хватать...
Вы что, хотите сказать, что вы можете ее в этом режиме изменить ? И почему "кнопкой" ? И почему отдельное поле, а не всю запись ? |
25.11.2010, 19:02 | #3 |
Пользователь
Регистрация: 19.02.2008
Сообщений: 24
|
При нажатии мышью на ячейку открывается панель с графикой, по которой я кликаю и выбираю определеный номер, который затем записываю в поле данной ячейки. Так вот при нажатии мышью на ячейку (она в фокусе) устанавливается режим редактирования, хотя он не действует по ReadOnly, но и панель не открыватся. Когда мышью ухожу на другое поле, а затем на это - все Ok. В основном это после того как добавлена запись, хотя сделан Post. (TDBGridEh).
|
25.11.2010, 19:58 | #4 | |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Цитата:
Введите флажок, указывающий, что нельзя переводить в режим редактирования только что добавленную запись... |
|
25.11.2010, 20:22 | #5 |
Пользователь
Регистрация: 19.02.2008
Сообщений: 24
|
OnCellClick по имени поля. После Post запись и так не в режиме редактирования. Но при щелчке происходит как бы имитация редактирования этого поля {закрашивается значение поля синим(первоначально оно = 0)}. Как это убрать я и не знаю.
|
25.11.2010, 20:30 | #6 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
Это нормальное поведение выделенного поля, как и любого другого.
От режима редактирования отличается тем, что закрашивается не строка в ячейке, а целиком ячейка, от и до. Надеюсь, после Post вы временно переводите грид в режим dgEditing=False ? Непонятно, что вам нужно. Если не хотите, чтобы и выделение на нем было, убирайте фокус с ДБГрида на другой контрол. Последний раз редактировалось mihali4; 25.11.2010 в 20:36. |
25.11.2010, 20:36 | #7 |
Пользователь
Регистрация: 19.02.2008
Сообщений: 24
|
Еще раз. Мне нужно чтобы когда я кликнул по этой ячейке (фокус уже на ней) вместо того, чтобы было "нормальное поведение ячейки" срабатывало бы OnCellClick. Как сделать?
Извиняюсь, не увидел dgEditing=False. Сейчас попробую - отпишусь. Последний раз редактировалось kraw2; 25.11.2010 в 20:39. |
25.11.2010, 20:39 | #8 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
А я вам написал - убирайте фокус...
Добавьте в обработчик OnCellClick последней строкой, например, Код:
|
25.11.2010, 21:16 | #9 |
Пользователь
Регистрация: 19.02.2008
Сообщений: 24
|
mihali4, спасибо. Только фокус не надо убирать. После Posta убираю dgEditing, а после обработки поля, опять включаю и Ok.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
запретить перемещение ячейки курсором | segail | Microsoft Office Excel | 2 | 06.07.2011 16:24 |
Как программно запретить запись на винчестер? | padalka | Помощь студентам | 8 | 14.11.2010 20:39 |
Запретить редактирование в DBGrid | MixanMM | БД в Delphi | 12 | 10.05.2010 20:28 |
Как оставить редактирование ячейки? | Andrei_IW | Общие вопросы .NET | 5 | 29.11.2009 22:56 |
Можно ли файл в MS Exel запретить редактирование? | jewller | Microsoft Office Excel | 6 | 05.02.2009 00:03 |