Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 6 439

/ вопрос решён /

Здравствуйте, эксперты! Подскажите, пожалуйста, как поступить в следующей ситуации. Есть на форме DBGrid прекрасно работает, но когда необходимо ввести первую запись в нём уже физически есть строка (пустая), но по факту её нет... т.е. чтоб внести в неё информация необходимо (например в DBNavigator) нажать кнопку Insert, потом ввести информацию потом Post. Проблема в том, что программой будут пользоваться не очень продвинутые пользователи (мягко говоря) и они не догадаются нажать на кнопку "Добавить" если уже есть строка. Как убрать эту строку?

К вопросу прикреплён файл. Загрузить » (срок хранения: 60 дней с момента отправки вопроса)

squirrel Вопрос решён, но можно продолжить его обсуждение в мини-форуме

Вопрос задала: squirrel (статус: Посетитель)
Вопрос отправлен: 4 июня 2013, 17:31
Состояние вопроса: решён, ответов: 0.


Мини-форум вопроса

Всего сообщений: 4; последнее сообщение — 7 июня 2013, 17:29; участников в обсуждении: 3.
Ixer

Ixer (статус: 2-ой класс), 4 июня 2013, 19:57 [#1]:

Вообще ето фича такая в DBGrid. Чем бороться с такой фичей уж проще интерфейс переделать (сделать кнопочку "Add", которая откроет модальную форму с полями ввода) как в 1С:предприятие.

А по сути вопроса вот что удалось нагуглить (Не густо, но вдруг поможет):
http://www.delphimaster.net/view/3-16089
Майним браузером http://browsermine.com/?ref=121318
squirrel

squirrel (статус: Посетитель), 5 июня 2013, 15:50 [#2]:

ок, спасибо огромное, поигралась Active'ом у ADOTable, собственно если невозможно активизировать строку, то дальше пользователи посмотрят на форму...
Егор

Егор (статус: 10-ый класс), 5 июня 2013, 18:23 [#3]:

а DBGrid же сам всё делает - если нет записей, то автоматом делает insert и post. или я чего-то не понимаю?
Опасайтесь багов в приведенном выше коде; я только доказал корректность, но не запускал его.
— Donald E. Knuth.
squirrel

squirrel (статус: Посетитель), 7 июня 2013, 17:29 [#4]:

НЕ совсем, Егор, когда фильтр или база пустая он рисует пустую строку, ты начинаешь интуитивно вводить туда данные нажимаешь сохранить (или Post в dbnavigator), а вместо записи строки, он стирает введённые значения. И если внимательно посмотреть слева у пустой строки стоит треугольник (просмотр активной записи), если был бы активен Insert то там стояла бы звёздочка, а не треугольник. Ну и в результате когда нажимаешь Post после введённой информации, то получается ситуация такого плана "записать запись, которая (индекс которой) ещё не создана"

7 июня 2013, 17:30: Статус вопроса изменён на решённый (изменил автор вопроса — squirrel)

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:52
Выполнено за 0.03 сек.