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

Вниз

При создании закладок программа зависает.   Найти похожие ветки 

 
Gear   (2007-03-22 15:35) [0]

Добрый день.
Имею на форме компонент самописный и PageControl, на котором динамически создаю TabSheets процедурой.
Если эту процедуру привязать к кнопке, то всё замечательно создаётся. Но стоит только функцию повестить на событие от компоненты, то страница создаётся и приложение повисает. Непойму в чём дело. Что может быть?
Вот немного кода:

procedure TForm4.CreateTab(name: string);
var
 T: TTabSheet;
begin
 T := TTabSheet.Create(Self);
 T.Caption := name;
 T.PageControl := PageControl1;
end;

//так работает
procedure TForm2.Button1Click(Sender: TObject);
begin
 Form4.CreateTab("закладка");
end;

//а так создаёт и сразу виснет
procedure TForm2.MyComponent1OnRead(mess: string);
begin
Form4.CreateTab(mess);
end;

//В самой компоненте:

TOnRead = procedure(mess:string) of object;
...
private
 FOnRead: TOnRead;
...
published
 property OnRead: TOnRead read FOnRead write FOnRead;
...

procedure TMyComponent.OnData(Response:string);
begin
...
 if Response<>"" then
       if assigned (FOnRead) then
          FOnRead("test");
end;


 
ЮЮ ©   (2007-03-24 07:40) [1]

Когда вызавется обработчик OnRead твоего компонента? Существует ли на данный момент Form4. Поставить брэкпоинт в предложенных нам строках и последовать дпльше с помощью отладчика не учили?

P.S. Может всё-же эти манипуляции делать не в OnRead компонента, а в OnCreate  формы(TForm2.FormCreate или TForm4.FormCreate в зависимости от того, кто позднее создается), коль уж компонент сам не может создать всё, что ему надо и этот код переносится в методы TForm2 ?



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

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

Наверх




Память: 0.45 MB
Время: 0.043 c
2-1177668183
Сергей Ю
2007-04-27 14:03
2007.05.20
Ошибка runtime на строке end. Как отловить?


15-1177322777
Zoop
2007-04-23 14:06
2007.05.20
Автоматические электомеханические варота.


6-1163515446
Konwin
2006-11-14 17:44
2007.05.20
Использование TServerSocket/TClientSocket + TThread


15-1176560673
vasIZmax
2007-04-14 18:24
2007.05.20
Читальня... или просмотрщики


1-1174556488
duhast
2007-03-22 12:41
2007.05.20
Проблема удаления объектов в 0-ом элемента коллекции (TCollectio)





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский