Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.032 c
14-41992
Knight
2003-10-17 14:17
2003.11.13
Люди, кто какие проги...


1-41626
Александр из Минска
2003-10-25 16:35
2003.11.13
Как программе переименовать свой *.exe?


6-41843
Zelikovsky Eugene
2003-09-11 12:46
2003.11.13
В Delphi 5 был такой компанент TNMHTTP?


4-42282
Stas
2003-09-10 15:44
2003.11.13
Свойства TWin32FindData


3-40856
Вованчик
2003-10-21 15:03
2003.11.13
Select





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский