Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];




Вниз

Помогите срочно надо 


ava   (2002-02-04 14:45) [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]

Приятно сам собой вести беседу



BlankAlex   (2002-02-04 14:58) [2]

Вижу, что у тебя по п1. два раза вызывается
Form1 := TForm1.Create(self);
И еще по OnClose делаешь action:=caFree



ava   (2002-02-04 15:30) [3]

> Вижу, что у тебя по п1. два раза вызывается
> Form1 := TForm1.Create(self);
> И еще по OnClose делаешь action:=caFree

OnClose action:=caFree есть

Где ошибка Form1 := TForm1.Create(self);

почему два раза если проверяется условие и второй раз
создается при выполнении условия




ava   (2002-02-04 15:47) [4]

убираю вторую строчку, при выполнении условия (отсутствие записи) форма работает нормально, а если запись есть , то она вообще не создается

но немогу понять почему



BlankAlex   (2002-02-04 15:54) [5]

Ты во всех пунктах делаешь
if ActiveMDIChild <> nil then ActiveMDIChild.Close без проверки типа MDIChilsd, может быть ты уничтожаешь эту форму сразу после создания?



ava   (2002-02-04 15:57) [6]

пункт 2,3 без проверки условия работает нормально

если есть запись то тоже все нормально,

а если нет то почемуто два раза?????????????



BlankAlex   (2002-02-04 16:00) [7]

Ты же сначала если нет записи, добавляешь ее и создаешь форму, а когда выходишь из Begin...End, опять ее создаешь. Добавь Boolean переменную, чтобы Form1 := TForm1.Create(self) вызывалось всего один раз



ava   (2002-02-04 16:02) [8]

а через ELSE нельзя?



BlankAlex   (2002-02-04 16:05) [9]

Те же яйца, только в профиль



ava   (2002-02-04 16:12) [10]

Спасибо заработало!!!!!!!!!!!




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.02.18;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.73 MB
Время: 0.03 c
1-57153           ola                   2002-02-04 09:49  2002.02.18  
crazy query


3-57016           pusrg                 2002-01-24 16:49  2002.02.18  
Проблема с запросом на вставку множества записей в таблицу


1-57115           Basaev                2002-02-03 03:51  2002.02.18  
Как закрыт другую програму из своей


1-57086           Priz_Datiy            2002-02-01 22:43  2002.02.18  
DialUp соединения...


6-57177           sh@dowww              2001-11-30 14:27  2002.02.18  
Sockets