Salut,
Je suis en train de programmer une petite appli MFC MDI qui consiste à afficher 1 image bitmap en arrière plan. Pour cela, je me suis inspiré des 2 progs svts :
http://www.codeproject.com/dialog/md...asp#xx535306xx
http://www.codeproject.com/dialog/bmpdlg01.asp
Le 1er utilise MFC et Win32, mais le pb c'est que cela ne marche qu'avec l' image de son projet, et dès que l'on prend 1 autre image, le la fonction BitBlt() plante.
Le second prog utilise 1 CDialog.
Partant de là, j'ai redéfini la fonction OnEraseBkgnd(CDC* pDC) de ma classe CMainFrame (fille de CMDIMainFrame), en m'inspirant de ce qui avait été fait ds le 2nd prog (avec la CDialog).
Mais malheureusement, ça marche pas. En effet, 1 fois que Windows a affiché mon image ds l'arrière plan de la CMainFrame, il efface aussitôt l'arrière plan et le redessine ; du coup plus aucune image affichée sur l'arrière plan.
Code : Sélectionner tout - Visualiser dans une fenêtre à part 
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
J'avoue que je suis 1 peu paumé.
J'ai pourtant bien pris soin de faire retourner à ma fonction
OnEraseBkgnd() la valeur 1, comme il est stipulé ds la doc MSDN :
Qqn a-t-il déjà été confronté à ce pb ?An overridden OnEraseBkgnd should return nonzero in response to WM_ERASEBKGND if it processes the message and erases the background;:

 

 
		
		 
         
 

 
			
			

 
   


 Dessiner une image en arrière plan d'1 MDI Main Frame
 Dessiner une image en arrière plan d'1 MDI Main Frame
				 Répondre avec citation
  Répondre avec citation


 
  
  
  
 
 
			 
 


 
				 
						
Partager