Re: Вывод графики в диалоговом окне
От: Master Gekus Россия  
Дата: 24.04.04 04:48
Оценка: 1 (1)
Здравствуйте, vandex, Вы писали:

V>Я вывожу в диалоговом окне нужный мне .bmp файл


V>CClientDC dc(this);

Судя по такому способу получения контекста устройства, отрисовка происходит не в обработчиках сообщений WM_PAINT или WM_ERASEBKGND, либо обработка этих сообщений реализована некорректно. Отсюда и все проблемы...

V>В Win98 отображения рисунков не происходит

V>Я узнал, что все дело в функции BitBlt(...), которая в Win98 отображает только изображения размером 32*32 (или 16*16) , т.е. иконы.
Да? И что за источник информации? Насколько я помню, функция BitBlt имеет ограничения на размеры, только связанные с памятью, и прекрасно работает начиная с Windows 2.31 (до этого я под Windows не писал, не знаю).

V>Какие Вы можете предложить альтернативные пути работы с графикой.

Учить матчасть . А так... GdiPlus, DirectDraw... Но в данном случае это не спасет гиганта мыслей

С уважением,
Залиовочкин Евгений
Вывод графики в диалоговом окне
От: vandex  
Дата: 23.04.04 19:10
Оценка:
Я вывожу в диалоговом окне нужный мне .bmp файл

CString path = "C:\.......";
CClientDC dc(this);
CDC dcMem;
dcMem.CreateCompatibleDC(&dc);
HBITMAP m_bmp1;

m_bmp1 = (HBITMAP)LoadImage(NULL, path, IMAGE_BITMAP, 75, 150, LR_LOADFROMFILE|LR_DEFAULTCOLOR);

HBITMAP bmp_old;

bmp_old = (HBITMAP)dcMem.SelectObject(m_bmp1);

dc.BitBlt(82, 190, 168, 340, &dcMem, 0, 0, SRCCOPY);

и все прекрасно работает, НО только под Win2000 и выше.
В Win98 отображения рисунков не происходит
Я узнал, что все дело в функции BitBlt(...), которая в Win98 отображает только изображения размером 32*32 (или 16*16) , т.е. иконы.
Какие Вы можете предложить альтернативные пути работы с графикой.
Re: Вывод графики в диалоговом окне
От: OLEGus1 Россия  
Дата: 26.04.04 08:47
Оценка:
On Fri, 23 Apr 2004 19:10:50 GMT, vandex <28655@news.rsdn.ru> wrote:


> и все прекрасно работает, НО только под Win2000 и выше.

> В Win98 отображения рисунков не происходит
> Я узнал, что все дело в функции BitBlt(...), которая в Win98 отображает
> только изображения размером 32*32 (или 16*16) , т.е. иконы.

в юмор!


--
Using M2, Opera's revolutionary e-mail client: http://www.opera.com/m2/
Posted via RSDN NNTP Server 1.8
Crescite, nos qui vivimus, multiplicamini
Re: Вывод графики в диалоговом окне
От: MoonCat  
Дата: 16.05.05 15:13
Оценка:
Здравствуйте, vandex, Вы писали:

V>Я вывожу в диалоговом окне нужный мне .bmp файл

-//-
А у меня не получилось. Не отображается, хотя установлен XP. Может быть стоит учесть какой-то нюанс? Можешь немножко поподробнее где как и почему работает?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.