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

Вниз

Вопрос по table и dbgrid! Помогите срочно плз!!   Найти похожие ветки 

 
digester ©   (2003-02-22 11:54) [0]

Ситуация такая: есть table1 и dbgrid, связанные друг с другом datasource на первой форме. На второй форме dbedit и dbmemo. Нажимая на первой форме кнопку "добавить" -> выскакивает вторая форма(с dbedit"om и memo), вводя какую-нить инфу и нажимая "ОК", эта информация отображается на первой форме только в 1-ой строке(сразу под индексами) :((( и постоянно перезаписывается.Как сделать чтобы, после нажатия "OK" в table1 заносилась информация из dbedit и dbmemo 2-ой формы, в последующие строки table1(что на 1-ой форме).??????
Заранее спасибо! Жду ответа.


 
Anatoly Podgoretsky ©   (2003-02-22 11:57) [1]

А повнятней


 
Романов Р.В. ©   (2003-02-22 12:00) [2]

Append, AppendRecord?


 
kaif ©   (2003-02-22 22:23) [3]

Наилучшее решение такое:

В обработчик OnClose второй формы вписываешь
with Form1.table1 do
if State in [dsEdit, dsInsert] then
Cancel;
//это для того, чтобы при любом способе закрытия второй формы не остаться в режиме редактирования.

В обработчик OnClick кнопки OK вписываешь
with Form1.table1 do
if State in [dsEdit, dsInsert] then
begin
Post;
self.Close;
end;

//для того, чтобы сохранить изменения и закрыть вторую форму только в случае, если это удалось.

На второй форме еще сделай кнопку Cancel со свойством
Cancel = True и
ModalResult = mrCancel

Тогда она без обработчика закроет окно.

Создай обработчик table1.AfterInsert и назначь его одновременно событию table1.AfterEdit
В этот обработчик впиши:

with TForm2.Create(nil) do
try
ShowModal;
finally
Free;
end;

//Тогда при любом добавлении или редактировании таблицы появится форма Form2.

Далее в обработчик кнопки "Добавить" впиши
table1.Insert или table1.Append (по вкусу)
//Append добавляет новую строку в конец набора, Insert - перед текущей записью.

Все. Хорошо бы еще кнопки "Удалить" и "Изменить" добавить в Form1... :))



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

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

Наверх




Память: 0.47 MB
Время: 0.019 c
1-39244
Kair
2003-03-02 21:32
2003.03.13
Поверхность формы


4-39623
viper
2003-01-22 14:59
2003.03.13
Запуск приложение


3-39210
trans
2003-02-21 17:35
2003.03.13
Зачем проге сетевой диск?


3-39190
UnDISCOvery
2003-02-20 16:39
2003.03.13
А есть ли в InterBase возможность массового копирования ?


14-39577
SSS
2003-02-27 06:40
2003.03.13
Jpg работа с базой