Bonjour � tous !

Je developpe actuellement un controle activex qui contient une boite de dialogue contenant un bouton Cancel et une progressBar, cette boite dialogue permet de suivre le cours d'un t�l�chargement.

Mon probl�me vient du fait que je cr�e ma boite de dialogue en faisant :


Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
void CTransfer::ShowDialog()
{
	myProgrBar = new CProgressBar();
	if(myProgrBar != NULL)
   {
	   BOOL ret = myProgrBar ->Create(IDD_PROGRESSBAR);
      if(!ret) 
         AfxMessageBox("Error creating Dialog");
      myProgrBar->ShowWindow(SW_SHOW);
   }
}
Dans mon object CProgressBar, j'ai deux objets un CProgressCtrl et un Button. Voici son constructeur :
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
BOOL  CProgressBar::OnInitDialog() 
{
	m_buttonCancel = new CButton();
	m_buttonCancel->Create("Cancel",WS_VISIBLE|BS_PUSHBUTTON, CRect(149,62,249,90), this, 1);
	m_progrCtrl = new CProgressCtrl();
	m_progrCtrl->Create(WS_VISIBLE|PBS_SMOOTH, CRect(7,20,540,60),  this, 1);
	m_progrCtrl->SetStep(8);
	return TRUE;
}
Mon probl�me c'est que j'ai l'impression de ne pas avoir la main pour pouvoir appuyer sur le bouton Cancel, il y a m�me des fois o� le bouton n'apparait pas. Je pense qu'il faudrait faire l'�quivalent du "DoEvent" en VB pour que tout rentre dans l'ordre mais je ne sais pas si c possible avec VC++. Si vous avez des id�es pour r�soudre mon probl�me n'hesitez pas.

Merci d'avance