Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как получить контекст устройства (HDC) диалога? необходимо получить контекст устройства 
:(
    Опции темы
Nendis
Дата 2.8.2013, 19:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 14
Регистрация: 26.11.2010

Репутация: нет
Всего: нет



Собственно пытаюсь вставить в главном диалоге в выделенную область картинку из файла через контекст в памяти:

для PictureBox m_Picture:

Код

        HANDLE hBitmap; 
        HDC hDC;  
        RECT picRect;
        HDC picHDC;
 
        hDC = CreateCompatibleDC(NULL); 
        hBitmap = LoadImage(0,L"C:\\Documents and Settings\\Xei\\Desktop\\Exclusion.bmp",IMAGE_BITMAP,0,0,LR_LOADFROMFILE);
        SelectObject(hDC,hBitmap); 
        picHDC = ::GetDC(m_Picture.m_hWnd);
        m_Picture.GetWindowRect(&picRect); 
        BitBlt(picHDC,0,0,(picRect.right - picRect.left),(picRect.bottom - picRect.top),hDC,0,0,SRCCOPY);
 
        DeleteDC(hDC); 


но необходимо рисовать в самом диалоге, в OnPaint. Для этого нужно получить HDC диалога. Подскажите как сделать.
PM MAIL   Вверх
vol4ek
Дата 3.8.2013, 09:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


конь в пальто
**


Профиль
Группа: Участник
Сообщений: 304
Регистрация: 1.5.2011
Где: Минск

Репутация: -1
Всего: 0



гугли класс CDC
PM MAIL ICQ   Вверх
Albor
Дата 5.8.2013, 07:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 589
Регистрация: 28.2.2009

Репутация: 7
Всего: 9



Цитата(Nendis @  2.8.2013,  18:28 Найти цитируемый пост)
но необходимо рисовать в самом диалоге, в OnPaint. Для этого нужно получить HDC диалога. Подскажите как сделать. 

Я так понимаю, что PictureBox это объект класса  CStatic? Если так, то у него есть функция SetBitmap, только hBitmap нужно сделать членом класса диалога или глобальным, иначе картинка не отображается. Ещё посмотри эту статью, если  SetBitmap, по какой-то причине не подходит.
PM MAIL ICQ   Вверх
akizelokro
Дата 11.8.2013, 21:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Крокодил
**


Профиль
Группа: Участник
Сообщений: 761
Регистрация: 30.7.2007

Репутация: нет
Всего: 5



Код

CClientDC dc (this);



--------------------
a = a + b; b = a - b; a = a - b;
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Visual C++/MFC/WTL | Следующая тема »


 




[ Время генерации скрипта: 0.1381 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.