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

Вниз

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

 
operator   (2003-11-02 19:13) [0]

Доброго времени суток. Вопрос не сложный. Я думаю, что в приведенном коде все нормально. Однако сомнение есть - уничтожит ли форма контролы в деструкторе? Прошу высказать своё булевское мнение.

with TForm.Create( Self ) do
try
InsertComponent( TListBox.Create( nil ) );
with TListBox( Components[0] ) do
begin
Parent := TWinControl( Owner ); //здесь не ругается, все нормально дб
OnDblClick := DialogListBoxDblClick; //там TForm(TWinControl(Sender).Owner).ModalResult := True
//позиционирование несущественно
end;
InsertComponent( TButton.Create( nil ) );
with TButton( Components[1] ) do
begin
ModalResult := mrOk;
Parent := TWinControl( Owner );
end;
if ShowModal = mrOk then //...
finally
Free;
end;


 
Ihor Osov'yak ©   (2003-11-03 01:43) [1]

Булевское мнение - да.

ЗЫ. Но вот использование конструкций вида
with TButton( Components[1] ) do
имхо не есть очень хорошо - можно получить проблемы при изменении сходного кода.. Я бы ввел вспомагательную переменную..


 
Palladin ©   (2003-11-03 02:04) [2]

собственно по опасному пути идете, товарищь...
проще действительно создать временную переменную TComponent и пользоватся ей во избежании дальнейших проблем...

с точки зрения разработки тоже не очень хорошо получается...
не красиво когда код вызывающий диалоговое окно его же и формирует...
пусть окно формируется само, необходимые условия формирования можно передавать в параметрах...


 
Германн ©   (2003-11-03 02:44) [3]

А как хорошо все начиналось - "Вызываем в Москву" - {with TForm.Create( Self ) do}, и как плохо окончилось - "художественная самодеятельность"
{InsertComponent( TListBox.Create( nil ) );
with TListBox( Components[0] ) do}


 
Igorek ©   (2003-11-03 10:21) [4]

Вместо

> InsertComponent( TButton.Create( nil ) );

лучше писать TButton.Create(Form1)



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

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

Наверх




Память: 0.47 MB
Время: 0.053 c
1-41159
vvvaaa
2003-11-03 08:59
2003.11.13
Как изменить ScrollBar?


14-41940
fool
2003-10-20 17:08
2003.11.13
MSSQL 7.0: непонятные тормоза


9-40769
TButton
2003-04-06 20:52
2003.11.13
работа над RPG


3-41078
Chaked
2003-10-23 16:30
2003.11.13
Доступ к записям


14-41879
Василиск
2003-10-22 11:34
2003.11.13
Как по аглицки правильно пишется: ???