Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.07.15;
Скачать: [xml.tar.bz2];

Вниз

Добавление записи в 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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.059 c
2-1182084487
Knob
2007-06-17 16:48
2007.07.15
Смещение компонентов Image


2-1182245713
Alexys
2007-06-19 13:35
2007.07.15
Ввод действительных чисел.


15-1181625712
boriskb
2007-06-12 09:21
2007.07.15
Коллекция книг по компьютерной тематике,


2-1182369641
Евгений Р.
2007-06-21 00:00
2007.07.15
Активный столбец в dbGrid


2-1182437480
Delon
2007-06-21 18:51
2007.07.15
Добрый вечер уважаемые мастера! Прошу помочь разобраться.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский