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

Вниз

Странные глюки с TPageControl   Найти похожие ветки 

 
Makhanev A.S. ©   (2004-04-18 20:15) [0]

есть PageControl.

В обработчике события одного (моего) компонента в ListView пишется строка.

ListView находится на неактивной странице PageControl"а.

После обработки события моего компонента, при переключении PageControl"а на страницу с ListView приложение виснет(под Delphi) или вылетает (без Delphi).

Другим методом повторить глюк не удалось.

При вылете пишет AV, ESysError (code=5, "отказано в доступе").

В приложении используются потоки.

Самое странное - то, что когда ListView находится на активной странице PageControl"а - всё ОК.

ListView может быть заменен на Memo - эффект тот же.
XP Манифест (наличие/отсутствие) на ситуацию не влияет.

Буду очень благодарен за советы.


 
Makhanev A.S. ©   (2004-04-18 20:22) [1]

забыл сказать,
При использовании DevExpress"овского PageControl (в предках нет VCL-ного PC) глюк остаётся, один в один.

Есть подозрения на потоки, но они с VCL никак не связаны.

Событие моего компонента генерится в обработчике OnThreadStart класса TServerSocket.


 
garry79 ©   (2004-04-18 20:49) [2]

У меня похожая ситуация (я даже писал здесь) была когда я считываю кол-во Item"ов в ListView, ну или еще что-нить, если он находится в неактивной странице, достаточно кликнуть на эту страницу, "посмотреть" на ListView, и все работает нормально. Я считаю что это глюк ListView (библиотека ComCtrl.dll кажется), потому что раньше заместо ListView были ListBox, и с ними все было нормально.


 
Makhanev A.S. ©   (2004-04-18 20:55) [3]


> garry79 ©   (18.04.04 20:49) [2]

хм, сейчас попробую листбокс...


 
Makhanev A.S. ©   (2004-04-18 21:09) [4]

Попробовал с ЛистБоксом - то же самое.

Нашел один стабильный выход тз ситуации - если в контрол добавить строку до "критичных событий" (напр. в FormCreate) - то всё ОК.


 
Makhanev A.S. ©   (2004-04-18 21:27) [5]

более того, если юзать просто панельку вместо PageControl и когда надо ее скрывать и показывать - то глюк повторяется.

Так что - проблема не в PC, а в Visibility WinControl"а + обработчик события


 
garry79 ©   (2004-04-19 07:56) [6]

Не понял, что значит в контрол до критичных событий?


 
Makhanev A.S. ©   (2004-04-19 15:51) [7]


> garry79 ©   (19.04.04 07:56) [6]
>Не понял, что значит в контрол до критичных событий?

У меня глюк возникает при добавлении строки в контрол (листвью, мемо, листбокс...).
Это добавление осуществляется в обработчике события моего компонента (просто пишу лог того, что событие отработало).

"Критичное событие" - это момент времени во время которого вызывается Add... строки в контрол и следует глюк.

Добавляя строку в других местах глюка нет.

Вот я и ломаю голову, то ли с моим компонентом что-то не так (что весьма странно), то ли с WinControl"ом что-то не так...

Более того, если до "критичного события" что-либо добавить в пустой контрол, то глюка нет.



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

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

Наверх




Память: 0.48 MB
Время: 0.074 c
1-1080124608
Dysan
2004-03-24 13:36
2004.04.11
StrToDate( 29/02/2004 );


14-1079329482
MPS
2004-03-15 08:44
2004.04.11
Как узнать текущий курс валюты...


3-1078846138
Sir Kik
2004-03-09 18:28
2004.04.11
SQL-запросик


14-1082046598
BRT
2004-04-15 20:29
2004.04.11
написание FLASH PLAYERа для моб.тел. Symbian ?


4-1075628697
Phantomaz
2004-02-01 12:44
2004.04.11
Как зашить рисунок в файл ресурса ?