| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Как сделать форму НЕ(!) прозрачной? |
| Автор: KeeRush 16.1.2010, 22:42 |
| Есть куча FAQ как сделать форму прозрачной а я столкнулся с обратной проблемой Суть: форма рисуется прозрачной когда включена тема Windows XP. В классической теме все рисуется нормально. В Висте тоже все ок. Настройки формы перерыл все. Компонент XP Manifest тоже не влияет на баг. Проекту уже около года но я все вермя работаю в классическом стиле и не знаю когда появился глюк. Может кто подскажут куда хоть копать то? Скриншот прилагается. |
| Автор: Frees 16.1.2010, 22:51 |
| может это не прозрачность а глюк отрисовки? |
| Автор: KeeRush 16.1.2010, 22:58 |
| Согласен. Наверное не правильно выразился. При первой отрисовке формы она копирует на себя то изображение которое под ней и потом с этим изображением и рисуется. |
| Автор: KeeRush 16.1.2010, 23:59 |
| Локализовал проблему. Дело всетаки в XPManifest. Я не учел что при удалении компонента его модуль не удяляется из Uses. В общем проблема возникает когда подключаю модуль XPMan из комплекта поставки Delphi 7. Собственно не сильно расстроюсь если программа не будет поддерживать стили XP но очень интересно откуда такой глюк. |
| Автор: Frees 17.1.2010, 00:37 |
| Груб боксы у тебя стандартные?, вроде только на них отрисовка не работает, попробуй их положить на панели..... |
| Автор: AntonN 17.1.2010, 01:48 |
| включена ли у формы Doublebuffered:=true? попробуй в formcreate насильно сделать doublebuffered:=false; сталкивался с этим постоянно (двойная буферизация, манифест и не классическая схема) |
| Автор: KeeRush 17.1.2010, 02:04 |
| AntonN, совершенно верно. У формы DoubleBuffered был выставлен True. Поставил False и все заработало. Принял на заметку. Спасибо! |