![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
![]() Здравствуйте!
![]() Подскажите пожалуйста, как в DBGrid добавить данные из Edit? Есть Form1, на которой расположены ADOConnection, ADOQuery, DataSource и DBGrid. База подключена из SQL Server. На Form2 расположены пустые Edit-ы для заполнения. И нужно чтоб при нажатии на Form2 кнопки "Добавить" в Form1.DBGrid добавлялась новая строка с данными из Edit-ов в соответствующие столбцы. |
#2
|
||||
|
||||
![]() А вы уверены, что вам нужны Edit может лучше DBEdit использовать?
Но если все-же нужны именно Edit то придется добавление записи реализовать ручками: Код:
procedure TForm12.Button1Click(Sender: TObject); begin ADOQuery1.AppendRecord([null,Edit1.Text,Edit2.Text,Edit3.Text]); end; Жизнь такова какова она есть и больше никакова. Помогаю за спасибо. |
Этот пользователь сказал Спасибо Страдалецъ за это полезное сообщение: | ||
VinexN (22.12.2016)
|
#3
|
||||
|
||||
![]() спасибо
![]() А через DBEdit как? Я просто не знала о таком... ![]() |
#4
|
||||
|
||||
![]() Цитата:
Ставишь на форму DBEdit в DataSource выбираешь базу, в DataField выбираешь нужное поле и т.д. |
#5
|
||||
|
||||
![]() Спасибо
![]() И в DBEdit у меня почему-то нельзя вписать никакой текст О_о |
#6
|
|||
|
|||
![]() Чтобы в DBEdit вводить текст, сперва нужно таблицу перевести в режим добавления новой записи или же редактирования. Можно, к примеру, прописать при открытии формы код ADOQuery.Insert (режим добавления записи). Вводишь в DBEdit какие-то данные, предварительно не забыв настроить компонент на нужный столбец таблицы. На кнопке "Добавить" код ADOQuery.Post (сохраняет запись). И еще бы я посоветовала при закрытии Form2 прописать код ADOQuery.Cancel, чтобы никакие данные не сохранились. Да и кнопку "Отмена" тоже можно сделать и прописать такой же код. Вообще, я бы ручками добавляла данные в базу из обычных Edit-ов
![]() И не забудь написать команду, чтобы обновить таблицу и чтобы новые введенные данные отобразились в DBGrid: Код:
ADOQuery.Active:=false; ADOQuery.Active:=true; Последний раз редактировалось Alana, 16.12.2010 в 15:59. |