begin process at 2012 05 28 05:38:15
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive C/C++

 > 

Archives

 > 

Au secours

 > 

Affichage d'une image dans une boite de dialogue


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Affichage d'une image dans une boite de dialogue

jeudi 29 juillet 2004 à 12:28:40 | Affichage d'une image dans une boite de dialogue

meem

Bonjour,

J'essaie d'afficher un bitmap dans une boite de dialogue sous VC++.NET.

Voici le code que j'utilise :

void InterfaceContour::OnBnClickedButton1()
{
CImage cim;
cim.Load("bip.bmp");
cim.Draw( (HDC) *GetDC(),0,0,150,100,0,0,720,576);

}

Une image totalement noire s'affiche alors sur ma boîte de dialogue.

Quelqu'un voit-il une solution ?

D'avance merci,

Cordialement,

Meem
jeudi 29 juillet 2004 à 15:44:57 | Re : Affichage d'une image dans une boite de dialogue

thierry la fronde

Membre Club
Réponse acceptée !
Peut-être que cette fonction t'aidera ?

Fonction applicable à un CBitmap !
SetBitmap( ::LoadBitmap(AfxGetInstanceHandle(), MAKEINTRESOURCE(IDB_MONBITMAP)))

D'autres infos dans la msdn.

thierry le frondeur
jeudi 29 juillet 2004 à 18:55:21 | Re : Affichage d'une image dans une boite de dialogue

imanewin32

Réponse acceptée !
utilise Ce code peu etre que ce t'edra:


#include <windows.h>
#include "resource.h"

//----------------------------------------------------------
// MAIN WNDPROC
//----------------------------------------------------------
LRESULT CALLBACK MainWndProc(HWND hwnd,UINT iMsg,WPARAM wParam,LPARAM lParam)
{
static int cxClient,cyClient,cxImage,cyImage;
static HDC hdcCompatible;
static HBITMAP bmp,oldBmp;


switch (iMsg)
{
case WM_CREATE:
{
HDC hdc;
BITMAP infoBmp;

hdc = GetDC(hwnd);

hdcCompatible = CreateCompatibleDC(hdc);

if(NULL == (bmp = LoadBitmap((HINSTANCE)GetWindowLong(hwnd,GWL_HINSTANCE),MAKEINTRESOURCE(ID_BMP))))
{
return -1;
}

if(0 == GetObject(bmp,sizeof(BITMAP),(LPVOID)(&infoBmp)))
{
return -1;
}

cxImage = infoBmp.bmWidth;
cyImage = infoBmp.bmHeight;


oldBmp = SelectObject(hdcCompatible,bmp);

ReleaseDC(hwnd,hdc);

return 0;
}

case WM_SIZE:
{
cxClient = LOWORD(lParam);
cyClient = HIWORD(lParam);

InvalidateRect(hwnd,NULL,TRUE);
return 0;
}
case WM_PAINT:
{
HDC hdc;
PAINTSTRUCT ps;

hdc = BeginPaint(hwnd,&ps);

if(!BitBlt(
hdc,
(cxClient - cxImage)/2,
(cyClient - cyImage)/2,
cxImage,
cyImage,
hdcCompatible,
0,
0,
SRCCOPY
))
{
PostQuitMessage(1);
}

EndPaint(hwnd,&ps);
return 0;
}
case WM_DESTROY:
{
SelectObject(hdcCompatible,oldBmp);
DeleteObject(bmp);
DeleteDC(hdcCompatible);

PostQuitMessage(0);
return 0;
}
}

return DefWindowProc(hwnd,iMsg,wParam,lParam);
} // MainWndProc()
//----------------------------------------------------------
// WIN MAIN
//----------------------------------------------------------
int WINAPI WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance,LPSTR lpCmdLine,int iCmdShow)
{
MSG msg;
HWND hwnd;
WNDCLASSEX wndclass;


wndclass.cbSize = sizeof(wndclass);
wndclass.style = 0;
wndclass.lpfnWndProc = MainWndProc;
wndclass.cbClsExtra = 0;
wndclass.cbWndExtra = 0;
wndclass.hInstance = hInstance;
wndclass.hIcon = NULL;
wndclass.hCursor = LoadCursor(NULL,IDC_ARROW);
wndclass.hbrBackground = (HBRUSH)(COLOR_APPWORKSPACE+1);
wndclass.lpszMenuName = NULL;
wndclass.lpszClassName = "JCD_BITMAP";
wndclass.hIconSm = NULL;

if(0 == RegisterClassEx(&wndclass))
{
return -1;
}

if(NULL == (hwnd = CreateWindow("JCD_BITMAP","Comment afficher une Bitmap ...",WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,hInstance,NULL)))
{
return -1;
}

ShowWindow(hwnd,iCmdShow);
UpdateWindow(hwnd);

while(GetMessage(&msg,NULL,0,0))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
return 0;
} // WinMain()


vendredi 30 juillet 2004 à 08:53:56 | Re : Affichage d'une image dans une boite de dialogue

meem

Merci à tous les deux !


Cordialement,

Meem


Cette discussion est classée dans : image, boite, affichage, dialogue, cim


Répondre à ce message

Sujets en rapport avec ce message

Affichage d'une image de fond dans une boite de dialogue [ par Calimero150 ] Coucou tout le monde!Je cherche un moyen d'afficher une image de fond dans une boite de dialogue donc si quelqu'un peut m'aider, qu'il n'hésite pas! M debutant visual: affichage 2e boite de dialogue [ par waaag ] Bonjour,j'ai créé une boite de dialogue avec le brave wizard en visual et j'amerais qu'une DEUXIEME boite de dialogue apparraisse quand je clique sur Besoin d'aide urgent sur affichage boite de dialogue [ par mista ] mistaSalut, je réitere ma question...Est-ce que quelqu'un pourrais m'aider pour que je puisse afficher un foutu boite de dialogue, via un programme en charger une image dans une boite de dialogue [ par lysane ] j'ai creer une application win32 de type dialog baseje souhaiterai charger une image de fond qui se trouve dans un fichier a partj'ai trouver sur le s L'image n'apparait pas dans la boite à dialogue. [ par marcel6566 ] VC++6 - MFCJ'ai créé une boite à dialogue lié à la class CIMAGE et je voudrais afficher l'image IDB_BITMAP1 dedans.J'ai défini CBitmap image;J'ai rajo Pb avec l'affichage dans un dialog [ par marcel6566 ] VC++6 - MFCJ'ai créé une boite à dialogue lié à la class CIMAGE et je voudrais afficher l'image IDB_BITMAP1 dedans.J'ai défini CBitmap image;J'ai rajo Affichage CDialog dans un autre thread [ par sanouk ] Bonjour,Je veux afficher une boite de dialogue dans un thread secondaire. J'utilise pour cela CWinThread qui créé ma boite de dialogue.Dans ma classe Affichage d'une boite de dialogue non modale [ par Tribute2U ] Bjr, je programme depuis peu sous VC++6.Je fais une messagerie instantanée et j'aimerai savoir comment faire pour ouvrir plusieurs fenetres non modale Insérer une image de fond sur une boite de dialogue [ par bethany ] Bonjour,Un ami du forum, glipper, m'a bien aidé à faire une treeview dans une boite de dialogue. Maintenant c'est vrai que le fond gris ca rend pas gé Intégrer une image JPEG dans une Boite de dialogue en MFC [ par picinounours51 ] Salut,Je voudrais savoir comment on crée une boite de dialogue MFC et intégrer une image JPEG dans celle-ci.J'ai essayé de comprendre en lisant différ


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,686 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales