![]() |
Модераторы: Snowy, Alexeis, MetalFan |
![]() ![]() ![]() |
|
evilguard |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 19.11.2006 Репутация: нет Всего: нет |
как создавать openGL контекст на форме - в сети полно примеров. мне нужно только в конкретном виджете:
Я в дельфи не силен - состряпал вот такую вот штуку - в отличие от примеров из сети используется хэндлер моего TPaintBox для получения контекста - pbGL.Canvas.Handle; Но почему-то это все не работает - цвет фона, который я установил черным - не меняется, а так и остается таким же серым как и вся остальная форма. |
|||
|
||||
Alexeis |
|
|||
![]() Амеба ![]() Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 55 Всего: 459 |
Не могу точно сказать в чем проблема, но финт в том, что в wglMakeCurrent не нравиться графический дескриптор. Возможно потому что
Для установки следует получить дескриптор того окна, которое под PaintBox (при помощи GetDC). После этого все работает. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
evilguard |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 19.11.2006 Репутация: нет Всего: нет |
понятно - на форме рисуется замечательно. Я щас заставил работать с компонентом TPanel - но вот беда - у него нельзя перехватить сообщение onPaint - и поэтому при системных вызовах перерисовывается компонент, а не opengl содержимое.
|
|||
|
||||
evilguard |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 52 Регистрация: 19.11.2006 Репутация: нет Всего: нет |
Нашел вот что: http://faqs.org.ru/forum/viewtopic.php?p=5...1d62cdd1a2bfe16
Здесь в самом начале описывается создание как раз такого контрола, какой нужен для вывода opengl - в TPanel перехватывается WM_Paint и WM_ERASEBKGND. Проблема решена то есть ![]() |
|||
|
||||
Aslan74 |
|
|||
Новичок Профиль Группа: Участник Сообщений: 10 Регистрация: 23.12.2004 Репутация: нет Всего: нет |
Замените PaintBox на ScrollBox и все заработает
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Звук, графика и видео" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делится вскрытыми компонентами
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Girder, Snowy. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Звук, графика и видео | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |