Форум: "Базы";
Текущий архив: 2002.02.28;
Скачать: [xml.tar.bz2];
ВнизПомогите срочно надо Найти похожие ветки
← →
ava (2002-02-04 14:31) [0]Немогу разобраться почему создается две формы MDIchild
procedure TFMyn.TreeView1Change(Sender: TObject; Node: TTreeNode);
var
n: Integer;
begin
n := Node.StateIndex;
case n of
1: begin
if ActiveMDIChild <> nil then
ActiveMDIChild.Close;
if not DataModule1.TNBal_1.FindKey([FMyn.DBLookupComboBox2.Text,FMyn.DBLookupComboBox1.Text]) then
begin
ShowMessage ("Ввод новых данных!!!");
begin
DataModule1.TNBal_1.Insert;
DataModule1.TNBal_1Name.Value := FMyn.DBLookupComboBox1.Text;
Form1 := TForm1.Create(self);
Form1.Button1.Visible := False;
Form1.Button2.Visible := True;
Form1.Button3.Visible := True;
Form1.DBEdit1.SetFocus;
end;
end;
Form1 := TForm1.Create(self);
end;
2: begin
if ActiveMDIChild <> nil then
ActiveMDIChild.Close;
Form2 := TForm2.Create(self);
end;
3: begin
if ActiveMDIChild <> nil then
ActiveMDIChild.Close;
Form3 := TForm3.Create(self);
end;
end;
end;
← →
ava (2002-02-04 14:50) [1]Приятно сам с собой вести беседу
← →
Praco (2002-02-04 15:20) [2]Close в MDIChild по умолчанию не уничтожает форму, а минимизирует.
Для уничтожения в OnClose нужно сделать Action:= caFree.
← →
ava (2002-02-04 15:33) [3]> Action:= caFree
есть
уничтожает все правильно
см. п3,4
но создает при выполнении условия
if not DataModule1.TNBal_1.FindKey([FMyn.DBLookupComboBox2.Text,FMyn.DBLookupComboBox1.Text]) then
две формы
← →
Praco (2002-02-04 15:40) [4]Form1 := TForm1.Create(self); // <---
Form1.Button1.Visible := False;
Form1.Button2.Visible := True;
Form1.Button3.Visible := True;
Form1.DBEdit1.SetFocus;
end;
end;
Form1 := TForm1.Create(self); // <---
Не поэтому?
← →
ava (2002-02-04 15:45) [5]Поэтому
убираю вторую строчку, при выполнении условия (отсутствие записи) форма работает нормально, а если запись есть , то она вообще не создается
но немогу понять почему
← →
Praco (2002-02-04 16:32) [6]Cуществуют ли обработчики TNBal_1.On..Error, TNBal_1.OnNewRecord, Application.OnException ?
А если пройтись по шагам(Trace Into), особенно здесь:
DataModule1.TNBal_1.Insert;
DataModule1.TNBal_1Name.Value := FMyn.DBLookupComboBox1.Text;
← →
Joric (2002-02-05 01:32) [7]А Form1.Show не пробовал?
← →
ava (2002-02-05 22:21) [8]спасибо за советы
вставил else в if все работает
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.02.28;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.004 c