![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Помогите срочно надо [D5, Paradox]
ava © (2002-02-04 14:31:00)Немогу разобраться почему создается две формы 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-05 22:21:00) [1]спасибо за советы
вставил else в if все работает
Joric (2002-02-05 01:32:00) [2]А Form1.Show не пробовал?
Praco (2002-02-04 16:32:00) [3]Cуществуют ли обработчики TNBal_1.On..Error, TNBal_1.OnNewRecord, Application.OnException ?
А если пройтись по шагам(Trace Into), особенно здесь:
DataModule1.TNBal_1.Insert;
DataModule1.TNBal_1Name.Value := FMyn.DBLookupComboBox1.Text;
ava (2002-02-04 15:45:00) [4]Поэтому
убираю вторую строчку, при выполнении условия (отсутствие записи) форма работает нормально, а если запись есть , то она вообще не создается
но немогу понять почему
Praco (2002-02-04 15:40:00) [5]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:33:00) [6]> Action:= caFree
есть
уничтожает все правильно
см. п3,4
но создает при выполнении условия
if not DataModule1.TNBal_1.FindKey([FMyn.DBLookupComboBox2.Text,FMyn.DBLookupComboBox1.Text]) then
две формы
Praco (2002-02-04 15:20:00) [7]Close в MDIChild по умолчанию не уничтожает форму, а минимизирует.
Для уничтожения в OnClose нужно сделать Action:= caFree.
ava (2002-02-04 14:50:00) [8]Приятно сам с собой вести беседу