Форум: "Базы";
Текущий архив: 2003.03.13;
Скачать: [xml.tar.bz2];
ВнизВопрос по 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;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.006 c