C/Visual C - CBitmap

 
Vista:

CBitmap

Publicado por Felipe (3 intervenciones) el 04/12/2007 20:42:30
Hola, tengo un problema usando la clase llamada CBitmap, lo que intento es cargar una imagen usando la funcion LoadBitmap("nombre del archivo"); pero por alguna razon nunca la abre, me gustaria que alguien me dijera que es lo que podria estar pasando. O si hay alguna otra manera de abrir imagenes.
p/d: el compliador es Visual C++.

desde ya muchas gracias
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:CBitmap

Publicado por fernando.gomez (1603 intervenciones) el 05/12/2007 01:25:45
CBitmap::LoadBitmap no te carga un bitmap desde un archivo, sino que te lo carga desde el archivo de recursos.

Por ejemplo, en tu proyecto dale agregar recursos (si no existe el archivo tuproyecto.rc). Luego, en los tabs donde se muestra el explorador, has click en "recursos" y en el árbol que aparece, con el derecho has click y selecciona "agregar bitmap". Seleccionas el bitmap desde tu archivo y le das un ID, digamos, IDB_MYBITMAP. Entonces ahora sí haces:

CBitmap bmp;
bmp.LoadResource(IDB_MYBITMAP);

y listo.

Más información en http://msdn2.microsoft.com/en-us/library/wc99t364(VS.80).aspx.

Saludos.
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

RE:CBitmap

Publicado por Felipe (3 intervenciones) el 05/12/2007 21:06:21
mmm, hay alguna funcion o clase predefinida que me permita abrir una imagen??? cual??
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

RE:CBitmap

Publicado por fernando.gomez (1603 intervenciones) el 06/12/2007 18:50:07
Cim, está LoadImage, ésta te regresa un HBITMAP desde un archivo en disco. Luego haces un attach del HBITMAP a tu objeto CBitmap (si quieres, ya que no es estríctamente necesario trabajar con esta clase, pero es recomendable).

HBITMAP hbmp = (HBITMAP)LoadImage(NULL, _T("C:img.bmp"), IMAGE_BITMAP,
0, 0, LR_LOADFROMFILE | LR_CREATEDIBSECTION | LR_DEFAULTSIZE);

CBitmap bmp;
bmp.Attach(hbmp);

http://msdn2.microsoft.com/en-us/library/ms648045.aspx

Saludos.
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

RE:CBitmap

Publicado por Felipe (3 intervenciones) el 06/12/2007 20:42:25
muchas gracias Fernando
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