Bonjour à tous!

J'ai créée une form contenant simplement une progressBar.
Mon but est d'afficher cette form avec la progressBar qui s'incrémente pendant qu'une autre fenetre ëst en train de loader.

J'ai utilisé l'exemple fourni par Nico-pyright :
http://www.developpez.net/forums/d36...obleme-thread/

mais rien à faire la barre de progression de s'incrémente pas.

Voici le code de ma fenetre de chargement:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
 //____________________________________________________________________________________________
	// avertisseurForm_Load()
	System::Void avertisseurForm::avertisseurForm_Load(System::Object^  sender, System::EventArgs^  e)
	{
		ProgressBarDelegate = gcnew ProgressBarDelegateHandler(this, &avertisseurForm::IncrementerBarre);
	}
 
	//____________________________________________________________________________________________
	// Executer()
	System::Void avertisseurForm::Executer() 
	{
		this->progress->Minimum = 0;
		this->progress->Maximum = 10;
		this->progress->Value = 0;
		this->progress->Step = 1;
 
		enChargement = true;
 
		t = gcnew Threading::Thread(gcnew Threading::ThreadStart(this, &avertisseurForm::TacheAEffectuer));
		t->Start();
	}
 
	//____________________________________________________________________________________________
	// TacheAEffectuer()
	void avertisseurForm::TacheAEffectuer()
	{
		do
		{
			//System::Threading::Thread::Sleep(100);
			this->Invoke(ProgressBarDelegate);
 
		}while(enChargement);
 
	}
 
	//____________________________________________________________________________________________
	// IncrementerBarre()
	void avertisseurForm::IncrementerBarre() 
	{
		progress->PerformStep();
		if(progress->Value== progress->Maximum)progress->Value = 0; 
 
	}
 
	//____________________________________________________________________________________________
	// Stoper()
	void avertisseurForm::Stoper() 
	{
		 enChargement = false;
		 t->Abort();			
	}
et voici comment j'appelle le code de cette fenetre à partir d'une autre fenetre:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 //____________________________________________________________________________________________
	// preparateurProgWaypointsForm_Load()
	System::Void preparateurProgForm::preparateurProgForm_Load(System::Object^  sender, System::EventArgs^  e)
	{
		//Création de la fenetre chargement		
		avertisseur = gcnew avertisseurForm();
//On dévoile la fenetre		
avertisseur->Show();
//On lance le thread
		avertisseur->Executer();
 
		//Creation du tableau de programmation des waypoints
		CreationTableau(); 
 
		//Initialisation des tableaux de reference
		InitTablesReference();
 
avertisseur->Stoper();
Quelqu'un aurait il une idée de mon erreur?

Merci d'avance

Kemanke