![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| lukas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 771 Регистрация: 23.2.2007 Репутация: 3 Всего: 15 |
Люди добрые, изнурил я себя уже поисками по всяким форумам и королевствам, никто эту проблему даже не обсуждает, а она на лицо.
Дело в том, что в режиме aero в висте и 7ке приложение отрисовываются необычным способом и при использовании некоторых функций GDI появляются различные мерцания и мигания, как будто ос перерисовывает все с двойной силой. Например всеми известная функция DrawFocusRect(dc, rect). При ее усиленном использовании появляются такие мигания. Например я думаю все сталкивались с такой проблемой при использовании компонента TSizeControl, я пытаюсь это дело исправить. Есть варианты, либо отключить режим аеро для определенного окна (или в крайнем случае для всего приложения), либо предложить какую нибудь альтернативу отрисовки окантовки. P.S. Как вы поняли, использую эту функцию для рисования окантовок при перемещении и изменении размеров контролов на форме в ран-тайм. P.S.S. Если поможете, будет новая версия TSizeControl (я пофиксил много багов, поделюсь со всеми желающими). -------------------- http://code.google.com/p/orionphp/ - opensource скриптовой язык Orion (аналог PHP) для freepascal/delphi. |
|||
|
||||
| lukas |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 771 Регистрация: 23.2.2007 Репутация: 3 Всего: 15 |
Люди победил я этот баг частично, но пришлось отрисовывать окантовку на канвасе формы, что имеет свои недостатки (оконтовка не накладывается поверх всех контролов).
Вот кому будет интересен компонент TSizeControl 7.2fix+ Изменение и доработки: - Исправлен баг прорисовки в aero в висте и seven - Исправлен баг при перетаскивании контрола за пределы формы, контрл в этих случаях сдвигался неестественно. - Доработано - теперь компоненты двигаются по размеру GridSize, а не по одному пикселю, т.е. как в делфи с включенной сеткой. - Отрисовывается автоматически сетка по свойству GridSize, если GridSize < 5 не отрисовывается ибо заметны мерцания. - Оптимизированы некоторые методы отрисовки, вернее отрисовка минимизирована - Убран хук с формы, который устанавливал TSizeControl для того чтобы можно было назначать события для формы Присоединённый файл ( Кол-во скачиваний: 22 )
SizeControl.rar 9,92 Kb-------------------- http://code.google.com/p/orionphp/ - opensource скриптовой язык Orion (аналог PHP) для freepascal/delphi. |
|||
|
||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |