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

Вниз

Destroy   Найти похожие ветки 

 
Delphin ©   (2004-12-02 20:02) [0]

Hi All! Есть проблема, связанная с многооконным интерфейсом и массивом из компонент: При создании нового окна, создаю новую кнопку (из массива), при закрытии окна чничтожаю и кнопку и окно, при повторном закрытии получаю access violation
Создаю так:

var
 Form1: TForm1;
 Child: TForm;
 But:Array[1..199]of TButton;
 I,T:Integer;
....
procedure TForm1.Button2Click(Sender: TObject);
Var
Nh,NT,NST:Integer;
begin
Inc(I);
Child := TForm2.Create(Application);
Child.Caption := "Caption"+IntToStr(i);
Child.Tag:=I;
But[i]:=TButton.Create(panel3);
But[i].Parent:=Panel3;
But[i].Name:="Name"+IntToStr(i);;
But[i].Caption:="Caption"+IntToStr(i);
IF I>1 Then
But[i].top:=But[i-1].top+But[i-1].Height+2
Else
But[i].Top:=27;
But[i].Tag:=I;
IF I>1 Then
But[i].Height:=But[i-1].Height
Else
But[i].Height:=25;
But[i].OnClick:=ButClick;

IF But[i].Height*i+i*2 > Panel3.Height Then  Begin
For Nh:=1 To I Do
But[Nh].Height:=But[Nh].Height-1;
//End;
For NT:=2 To I DO
But[Nt].top:=But[Nt-1].top+ But[Nt].Height+1;

End;


а уничтожаю так:

procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
(Form1.Panel3.Components[Form1.ActiveMDIChild.Tag] as TButton).Destroy;
Action:=CaFree;

end;


Мастера, в чём может быть проблема?


 
Anton_K ©   (2004-12-02 20:05) [1]

Кнопка уничтожается автоматически, когда уничтожается её хозяин.



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

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

Наверх




Память: 0.46 MB
Время: 0.028 c
8-1095948856
Гость
2004-09-23 18:14
2004.12.19
GDI+ Проблема кодировок.


4-1099207243
Beginer
2004-10-31 10:20
2004.12.19
Debug API


14-1101561146
asdqwer
2004-11-27 16:12
2004.12.19
Количество отснятых фильмов


14-1101707365
TButton
2004-11-29 08:49
2004.12.19
LAN


1-1102057217
denis24
2004-12-03 10:00
2004.12.19
TdateEdit.date