Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Stack overflow - save your work and restart Delphi [D6, D7, NT4, Win2k, WinXP]


boband ©   (2004-08-04 00:57:00) 

Доброго времени суток! Помогите плиз!
Создал я свой компонент (производный от TCustomControl, а внутри еще и TEdit). На отладочном варианте все работает как надо...
После того как добавил я этот компонент в IDE появилась проблема, заключающаяся в постоянном выскакивании ошибки (см. сабж). Я отловил два постянных действия при которых появляется ошибка:
1. Компонент положили на форму и попытались в ObjectInspector перейти на закладку Events...
2. Компонент положили на форму и попытались Build Project
3. Компонент положили на форму и просто попытались сохранить проект - Delphi ваще вылетает без всяких сообщений.
Если кто чего знает поделитесь плиз!!!

P.S. Знаю я что Stack overflow почти всегда возникает из-за рекурсии, но я ее у себя в коде не нашел да и отладочный пример работает...


Германн   (2004-08-08 04:31:00) [1]

2 boband   (06.08.04 19:42) [4]
>toMaster: Я конечно могу приводить код...
>Но кому интересно выискивать ошибки в чужом коде (тем более он >не маленький)? А? Поэтому когда задавал вопрос меня >интересовало может кто с чем таким уже сталкивался...

Если все еще интересует сталкивался ли кто-то с чем-то подобным, плюнь и забудь. Всесталкивались, лично, и не один раз. И вообще - это норма для программиста, сталкиваться с ошибкамипри написании любой программы. Но вот внешние проявления этих ошибок бывают как схожими, так и различными. Как при разных ошибках, так и при одинаковых. Увы! Посему без приведения кода - очень мала вероятность получить полезный ответ. Тут на форуме принято относить такие редкие случаи к разряду телепатии. Имхо.


boband   (2004-08-06 19:42:00) [2]

toMaster: Я конечно могу приводить код...
Но кому интересно выискивать ошибки в чужом коде (тем более он не маленький)? А? Поэтому когда задавал вопрос меня интересовало может кто с чем таким уже сталкивался...


Мастер   (2004-08-04 09:57:00) [3]

>boband   (04.08.04 09:44) [2]
toMaster: не смешно...

Конечно, не смешно.
Сразу надо код приводить, а не описывать, что он должен делать и не делает.


boband   (2004-08-04 09:44:00) [4]

toMaster: не смешно...

А ошибка все-таки была в рекурсии :). Отлаживайте код на свежую голову - с утра поэксперементировал и нашел вот такую пургу:

TMyEdit = class(TCustomControl)
 private
   FEdit:TEdit;
...
 published
property OnChange: TNotifyEvent read GetOnChange write SetOnChange;
...
function TRoundEdit.GetOnChange: TNotifyEvent;
begin
 GetOnChange:=OnChange;// <-Ошибка возникает рекурсия!!!
 //Надо
 //GetOnChange:=FEdit.OnChange;
end;

Вот так вот. Прошу прощения кого отвлек.


Мастер   (2004-08-04 09:15:00) [5]

Ошибка в 19-й строке.


Наверх

Титульная страница Поиск, карта сайта Написать письмо