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

Вниз

Добавление записи в DBGrid   Найти похожие ветки 

 
WhiteCat   (2007-06-16 16:15) [0]

Здравствуйте.
Подскажите можно ли настроить, чтоб при добавлении записи  в DBGrid (при нажатии на Insert) запись добавлялась после выбранной, а не перед ней


 
Desdechado ©   (2007-06-16 16:32) [1]

Запись добавляется не в грид, а в DataSet
Если записи в датасете упорядочены, то некоторые виды датасетов позволяют автоматически позиционировать по индексу свежевведенную запись после Post;


 
WhiteCat   (2007-06-16 18:45) [2]

to Desdechado
Вы не поняли вопроса.

Даже не знаю как переформулировать. Опишу что хотелось бы получить:
в DBGrid когда нажимаешь на кнопку Insert появляется пустая строка, для внесения записи,
так вот пустая строка появляется над выдленной записью, а необходимо чтоб под ней.


 
Johnmen ©   (2007-06-16 19:42) [3]


> Вы не поняли вопроса.

Не надо смешить. Читайте буквари...:)


 
Programir   (2007-06-16 20:16) [4]

to  Johnmen
 А что здесь смешного, я например тоже не знаю как это сделать без переписывания компонента, так что вопрос вполне нормальный.


 
WhiteCat   (2007-06-16 20:21) [5]

to Johnmen
 Объясните, пожалуйста, что Вы хотели сказать. Еще раз повторяю, речь идет о TDBGrid, а не о TDataSet и не о данных, а о редакторе Grida.

 Клиенты просят, чтоб ПУСТАЯ СТРОКА для внесения новой записи появлялась не сверху, а снизу под текущей записью.

Неужели, это написано в букваре. Подскажите в каком.


 
Германн ©   (2007-06-16 20:25) [6]


> Клиенты просят, чтоб ПУСТАЯ СТРОКА для внесения новой записи
> появлялась не сверху, а снизу под текущей записью.

Скажи клиентам, что это невозможно. А точнее долго и дорого.


 
Johnmen ©   (2007-06-16 20:28) [7]


>  Еще раз повторяю, речь идет о TDBGrid, а не о TDataSet
> и не о данных, а о редакторе Grida.

Да не надо повторять про телевизор. Если в нём вы видите группу программеров, пьющую пиво, неужели вы думаете, что они сидят в том самом телевизоре? И телевизор их сортирует по количеству выпитого пива?


 
WhiteCat   (2007-06-16 20:38) [8]

Скажите, кто-нибудь понимает Johnmen`а?

to Johnmen
 Вы можете сказать что-нибудь внятное? Просто по вашим ответам складывается впечатление, что Вы знаете простое решение, и в то же время Германн и Programir утверждают, что это не просто.


 
Johnmen ©   (2007-06-16 20:59) [9]

Говорю внятно:
1. ДБГрид - это прозрачное окно. Понятно?


 
Германн ©   (2007-06-17 01:19) [10]


> WhiteCat   (16.06.07 20:38) [8]
>
> Скажите, кто-нибудь понимает Johnmen`а?
>

Я. Прекрасно понимаю всё, что он сказал в этой ветке. И абсолютно согласен с ним.
Только, имхо вы оба говорите про разные вещи. Johnmen как Мастер в вопросах баз данных говорит именно о них, а твой вопрос (как я его понял) о поведении компоненты TDBGrid после нажатия на клавиатуре кнопки Insert.
Но пойми:
1. Есть общепринятые стандарты. Insert aka Вставка ВСЕГДА добавляет новые данные в "позицию курсора"! И не важно о чем речь идёт. О вставке символа в текстовом редакторе или о вставке записи в "редакторе набора данных", коим можно с натяжкой считать TDBGrid.
2. В реальной жизни вставленная запись в большинстве случаев оказывается и не "сверху" и не "снизу" текущей записи, а там, где ей надлежит быть в соответствии со структурой данной таблицы.


 
Германн ©   (2007-06-17 02:17) [11]

И в догонку к [10]
Если я правильно понял суть вопроса, то не вижу никакого смысла изменять стандартную реакцию TDBGrid на нажатие клавиши Insert. Поскольку если нужно "вставить внутрь", то надо просто правильно установить курсор перед вставкой. А если нужно "добавить следущую после последней", то нужно вместо клавиши Insert нажать клавишу "Стрелка вниз".

P.S. Пункт 2 из  [10] всё равно более главный!


 
WhiteCat   (2007-06-17 11:41) [12]

to German
 Вы совершенно правы! И вопрос Вы поняли  (не понимаю, почему до johnmen`a не доходит). Но именно, стандартное  поведение DBGrida и не устраивает. Все дело в том что по нажатии клавиши вниз добавление пустой строки у меня заблокировано (на это есть масса причин). Поэтому добавление новой строки (а не записи в таблицу, (пояснение для johnmena)) необходимо осуществлять под текущей. Я готов переписать компонент, но тогда подскажите какой обработчик надо переписывать?


 
Johnmen ©   (2007-06-17 14:02) [13]


>  Поэтому добавление новой строки

Добавление новой строки куда?
И что по поводу [9]?


 
WhiteCat   (2007-06-17 14:53) [14]

to Johnmen

> Добавление новой строки куда?
Скажите, вы правда мастер в вопросах БД? Попробую по букварю: есть такой компонент TDBGrid, функция которого отображать данные из таблицы (это по поводу[9]). Его реакция на нажатие клавиши "INS" предоставить пользователю интерфейс (пустую строку) для внесения новой записи. Так вот эта пустая строка, появляется над текущей выделенной, а надо (очень надо) чтоб под ней.


 
Johnmen ©   (2007-06-17 14:58) [15]


> WhiteCat   (17.06.07 14:53) [14]

Ну не хотите - да и ладно...



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

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

Наверх




Память: 0.5 MB
Время: 0.028 c
2-1182338459
авыф
2007-06-20 15:21
2007.07.15
сетевая папка


2-1182427820
leonidus
2007-06-21 16:10
2007.07.15
Странное поведение TRichEdit


2-1182540179
bagos
2007-06-22 23:22
2007.07.15
графа


2-1182166843
DarekS
2007-06-18 15:40
2007.07.15
Сервис и ADO


1-1179221654
i2e
2007-05-15 13:34
2007.07.15
MainMenu, в котором строки выделяются рамкой