Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Как нарисовать Bmp в Gdi Api

253
21 марта 2005 года
Proger_XP
1.5K / / 07.08.2004
Как нарисовать битмап на форме в api если у нас есть handle формы и hbitmap битмапа?
425
21 марта 2005 года
sq_deep
498 / / 18.02.2005
См. BitBlt(), StretchBlt().
253
21 марта 2005 года
Proger_XP
1.5K / / 07.08.2004
Цитата:
См. BitBlt(), StretchBlt().


Для них нужно 2 hdc и не нужно hbitmap
что мне делать с srcdc?

9.5K
21 марта 2005 года
nikiforov
24 / / 21.03.2005
Цитата:
Originally posted by Proger_XP

Для них нужно 2 hdc и не нужно hbitmap
что мне делать с srcdc?



Создать DC для изображения, выбрать в него изображение, вызвать StretchBlt() или BitBlt().

425
21 марта 2005 года
sq_deep
498 / / 18.02.2005
[COLOR=silver]Думаю, г-н nikiforov недостаточно ясно рассказал. Помню, как сам не мог понять, как показать bitmap. Поэтому поясню немного.[/COLOR]

Надо действовать примерно так.
 
Код:
HDC hdcBmp = CreateCompatibleDC(hDC);  // создаём DC, совместимый с нашим DC
HBITMAP hBmpOld = (HBITMAP)SelectObject(hDC, hBmp);  // выбираем наш bmp в созданный контекст

// копируем из созданного контекста в наш;
// последний параметр сделайте SRCCOPY,
// а потом разберитесь с другими возможными значениями
BitBlt(hDC, ..., hdcBmp, ..., SRCCOPY);

SelectObject(hDC, hBmpOld);    // освобождаем наш bmp из DC
DeleteDC(hdcBmp);              // убиваем временный DC
Следует заметить, что создание display context — дорогая операция.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог