Страница 1 из 1

OWNERDRAW - эффекты к объека управления

Добавлено: 23 июл 2007, 20:07
Stealth Legion
??_OWNERDRAW позволяет нарисовать объект "собственными руками"(:cool :) с помощью вызова функций...

Кому не тяжело - пару примеров кода, где используются необходимые функции для украшения кнопки или чего нибудь ещё....

Объяснте сам процесс работы приминения эффектов для украшения объекта управления

Re: OWNERDRAW - эффекты к объека управления

Добавлено: 24 июл 2007, 12:09
WinMain
Если ты используешь платформу MFC, то тебе нужно создать субкласс для нужного стандартного элемента (кнопка, листбокс, комбобокс, и др...). В этом субклассе переопределяется виртуальный метод DrawItem(). В нём ты и прописываешь всю процедуру отрисовки, на сколько хватит твоих знаний и фантазии.
Вот мой пример собственной отрисовки выпадающего списка в комбобоксе...

Re: OWNERDRAW - эффекты к объека управления

Добавлено: 24 июл 2007, 13:09
Stealth Legion
WinMain писал(а):Если ты используешь платформу MFC, то тебе нужно создать субкласс для нужного стандартного элемента (кнопка, листбокс, комбобокс, и др...). В этом субклассе переопределяется виртуальный метод DrawItem(). В нём ты и прописываешь всю процедуру отрисовки, на сколько хватит твоих знаний и фантазии....
Перегружать метод DrawItem..ясно..!
А для рисования использовать функции, связанные с GDI и HDC / class CDC, начинающиеся с Draw...и так дале? Спасибо...

Re: OWNERDRAW - эффекты к объека управления

Добавлено: 24 июл 2007, 13:29
WinMain
В принципе можно использовать не только GDI. Есть более современные графические библиотеки, типа GDI+ или Direct3D. В последнем графические возможности вообще на порядок выше.

Re: OWNERDRAW - эффекты к объека управления

Добавлено: 27 июл 2007, 01:00
Stealth Legion
WinMain писал(а):В принципе можно использовать не только GDI. Есть более современные графические библиотеки, типа GDI+ или Direct3D. В последнем графические возможности вообще на порядок выше.
За совет спасибо!
Но я вот только не понимаю как именно пользоваться DirectDraw? Что в нем есть и как использовать? Ищу в MSDN, Inet - все бестолку - ничего найти толком не могу...
(ЕСЛИ КТО ЗНАЕТ ЧТО, ПОЖАЛУЙСТА, ПОДСКАЖИТЕ ИЛИ ДАЙТЕ ССЫЛКИ)
С OwnerDraw тоже уже проблем нет...
Пока выход один: уЦиться, уЦиться и ещё раз уЦиться(:cool :)

Re: OWNERDRAW - эффекты к объека управления

Добавлено: 27 июл 2007, 02:48
WinMain
Сам по себе интерфейс IDirectDraw позволяет напрямую в видеопамять заливать растровые изображения или просто цветовой фон. Таким образом вывод изображений осуществляется намного быстрее, чем через GDI. Это даёт возможность быстро менять изображения на экране и создавать эффекты анимации или видео. Никакой другой функциональности он в себе не содержит. А уж если ты привёл в качестве цитаты мои слова, то там шла речь не о DirectDraw, а о Direct3D - это совсем разные вещи. Чтобы работать с Direct3D, нужно сначала скачать и установить на своём компьютере DirectX SDK. Дистрибутив весит более 300 Мб. В нём есть вся справочная информация и набор примеров с исходниками.