C/Visual C - Bitmaps

 
Vista:

Bitmaps

Publicado por Nicolas (183 intervenciones) el 19/10/2003 21:56:20
Hola a todos:

Necesito saber como levantar un .bmp desde un archivo en algun directorio
del disco rigido (o diskette o lo que sea).

Lo que logre hacer es en una aplicacion MFC basada en dialogos que
muestra un bitmap. Cree una variable static a mi dialogo y una
global.

La static es: m_imgBmp;
La global es: m_bmp;

La static es de tipo CStatic y la global es de tipo CBitmap.

Luego, en el ::OnInitDialog() escribo esto:
VERIFY(m_bmp.LoadBitmap (IDB_BITMAP1));
m_imgBmp.SetBitmap (m_bmp);

IDB_BITMAP1 es un bitmap creado desde la solapa de Resource View.
Lo que se hace es loadear un bitmap a la variable global de tipo CBitmap
y luego se la asigno a la variable static.

Lo que quiero hacer yo, es poder levantar un bitmap desde un archivo
y no desde un bitmap creado por mi en el Resource View.
Quisiera algun tipo de funcion como en Delphi seria : LoadFromFile()
o alguna parecida.

Si alguien me puede ayudar

Salu2!!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Bitmaps

Publicado por fernando.gomez (1603 intervenciones) el 23/10/2003 02:05:53
Empleas el WinAPI: LoadImage

HANDLE LoadImage(
HINSTANCE hinst, // handle a la imagen
LPCTSTR lpszName, // id de la imagen
UINT uType, // tipo
int cxDesired, // ancho
int cyDesired, // alto
UINT fuLoad // cómo cargar
);

Nota que en uType indicas si es IMAGE_BITMAP, IMAGE_CURSOR o IMAGE_ICON. En fuLoad, indicas LR_LOADFROMFILE para hacer notar que vas a cargar la imagen desde lpszName (segundo parámetro). Además, para cargar una imagen OEM, pones hinst a cero. Para eliminar el objeto, empleas DeleteObject y le pasas tu HINSTANCE.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar