[vb.net] formulaire

formulaire [vb.net] - VB/VBA/VBS - Programmation

Marsh Posté le 25-02-2013 à 18:44:28    

Bonjour à tous,
 
Je débute en programmation sous Visual Studio 2010 en vb.net.
 
Je souhaite faire une appli contituée d'un formulaire principal (form1). Celui-ci ouvre un formulaire enfant nommé Stats, tout simple : constitué d'un label + une progressbar. Le code au chargement de Stats contient différents calculs et les valeurs du texte du label et de la progressbar aux différentes étapes de ces calculs.
 
Je voudrais qu'au chargement de form1, le formulaire Stats s'ouvre avant d'avoir fini tous ses calculs, pour voir son texte et sa progressbar évolué au fil des calculs.
 
Actuellement, mon code ne me le permet pas (mon formulaire Stats ne s'ouvre qu'une fois tout le traitement achevé, ce qui n'a pas d'intérêt...) Le voici :
 

Code :
  1. Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
  2.         BDDcnx_Connecter()
  3.         Stats()
  4.     End Sub
  5.     Private Sub Stats()
  6.         Dim NewMDIChild As New Stats
  7.         NewMDIChild.MdiParent = Me
  8.         NewMDIChild.Show()
  9.     End Sub
  10.     Private Sub Stats_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
  11.         chargement()
  12.     End Sub


 
Pourriez-vous me guider sur la façon de faire apparaître mon formulaire avec son texte et sa barre de progression ?


Message édité par Blue Cactus le 25-02-2013 à 18:45:13
Reply

Marsh Posté le 25-02-2013 à 18:44:28   

Reply

Marsh Posté le 25-02-2013 à 23:03:28    

Salut,
 
Une façon barbare serait de mettre un vieux doevent à chaque étape pour raffraichir les forms.
Une façon plus propre serait de mettre les calculs dans un backgroundworker ou un thread.
 

Reply

Marsh Posté le 09-03-2013 à 16:57:46    

Bonjour,
 
voici ce que je conseil : lire l'article dans ce lien =  Exemple de ProgressBar en Visual Basic
  :bounce:  http://checktechno-fr.blogspot.com [...] basic.html  
 
Il faut évidemment s'en inspirer et ne pas copier bêtement.
 
Il y a même 2 exemples téléchargables. Dans l'un des exemple à télécharger, l'Équivalent de ta fonction Chargement() est la fonction ProgessBarFunction qui représente un quelconque chargement ou travail à effectuer dans compromettre le fonctionnement de ta form1 ou ton formulaire Stats. Autrement dit, alors que ta form1 s'ouvre (ou Stats), tu verra que ton chargement se fera simultanément. L'exemple présente aussi une fonction d'arrêt, de suspension et de reprise. Par contre, pour un débutant, cet exemple pourrait sembler difficile à première vue.
 
L'autre exemple est plus simple.  :love:  
 
N'emploi pas la fonction DoEvents parce qu'effectivement, elle est barbare. Non seulement, ça ralentit les performances de ton programmes, elle va de plus faire clignoter ta form1 à l'écran. Assez pour en vomir.  :cry:  
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed