ProgressBar en C# et Windows Form - 04-17-2016

Transcription

ProgressBar en C# et Windows Form - 04-17-2016
ProgressBar en C# et Windows Form - 04-17-2016
Par DjezusKryst de FREEDOM SUBSTITUTE - http://www.freedom-substitute.fr
ProgressBar en C# et Windows Form
http://www.freedom-substitute.fr/programmation/progressbar-c-windows-form/
Les barres de défilements existent depuis des années sur beaucoup de types de machines, elle permettent
de connaître l’avancée en temps réel d’un processus. Parfois elles nous mentent ! À quoi est-ce dû ? Et
est-ce que les ProgressBar sont réellement utiles dans tous types d’applications ? C’est ce qui va être
traité dans ce cours aujourd’hui !
Comme d’habitude, nous aurons un scénario pour notre TP, nous avons choisi de créer un programme
simulateur d’abonnement à un forfait en Windows Form. Dans ce programme la ProgressBar nous servira
a indiquer l’avancée dans le processus à l’utilisateur (parce que des étapes sont cachées pour donner du
sens à la barre de progrès).
Utilité d’une ProgressBar dans les programmes
Qu’est-ce qu’une ProgressBar ?
La progressBar (où Barre de progrès en français), est une barre indiquant le progrès / avancement d’un
travail qui est en cours.
Au début la barre part de zéro (sauf si indication contraire dans le programme) pour se remplir petit à petit
que la tâche se complète.
En quoi est-ce utile ?
N’importe qui vous le dira, avoir une barre indiquant le progrès d’une tâche en cours est important, cela
en devient presque psychologique à attendre un certain avancement de cette barre pour faire certaines
tâches… elles nous tiennent en haleine jusqu’à la fin de la tâche en cour !
Résultat de quelques études :
1 / 12
ProgressBar en C# et Windows Form - 04-17-2016
Par DjezusKryst de FREEDOM SUBSTITUTE - http://www.freedom-substitute.fr
Selon des études américaines concernant les barres de progrès, il en est ressorti qu’elles augmentent :
La satisfaction lors de sondages en ligne,
Elles accroissent l’engagement du répondant,
Et 75% des personnes ayant suivis un test sans barre de progrès disent en désirer une.
Cas où les ProgressBar sont utiles
Dans notre programme :
Dans notre exemple que nous allons voir par la suite, nous avons créé un programme permettant de
choisir un forfait suivant le nombre d’heures, le nombre de SMS et d’autres options.
La barre de progrès est donc utile pour montrer à l’utilisateur au fur et à mesure qu’il choisit ses options
s’il arrive à la fin pour pouvoir passer commande.
Sur Internet :
LinkedIn
2 / 12
ProgressBar en C# et Windows Form - 04-17-2016
Par DjezusKryst de FREEDOM SUBSTITUTE - http://www.freedom-substitute.fr
Sur ce réseau social professionnel, le site nous recommande de compléter certaines informations pour que
notre profil soit le plus complet possible et qu’ainsi il puisse être plus effectif sur le réseau.
3 / 12
ProgressBar en C# et Windows Form - 04-17-2016
Par DjezusKryst de FREEDOM SUBSTITUTE - http://www.freedom-substitute.fr
Ce type de barre d’avancement n’augmente pas suivant le temps mais suivant une action de l’utilisateur
sur le site.
DropBox
4 / 12
ProgressBar en C# et Windows Form - 04-17-2016
Par DjezusKryst de FREEDOM SUBSTITUTE - http://www.freedom-substitute.fr
Dropbox utilise un système similaire mais sans barre pour montrer la progression, ici c’est sous forme
texte, « complété » ou rien du tout si ce n’est pas encore fait.
5 / 12
ProgressBar en C# et Windows Form - 04-17-2016
Par DjezusKryst de FREEDOM SUBSTITUTE - http://www.freedom-substitute.fr
Un système de récompense relatif à ce que le site propose est aussi présent, ce qui rejoint notre tableau de
tout à l’heure :
« Avoir un but puis accomplir ce but ».
6 / 12
ProgressBar en C# et Windows Form - 04-17-2016
Par DjezusKryst de FREEDOM SUBSTITUTE - http://www.freedom-substitute.fr
Sur les ordinateurs :
Voici une représentation de la barre de progrès sous Windows, elle est censée être utile pour nous montrer
le progrès lors d’une installation d’un programme (par exemple).
Seulement elle est critiquable, puisque comme on peut le voir sur l’image, la plus grosse partie d’une
installation (par exemple d’un logiciel) est la copie des fichiers, cependant sur la barre de progrès elle
représente autant de temps que la suppression des fichiers temporaires qui en réalité ne durent que
quelques secondes à une même échelle !
Voici comment la barre devrait réellement être représentée, le plus long prend la plus grande partie de la
barre, le reste se sépare équitablement en relation avec le temps que chaque étape à besoin.
Utiliser une ProgressBar en C#
7 / 12
ProgressBar en C# et Windows Form - 04-17-2016
Par DjezusKryst de FREEDOM SUBSTITUTE - http://www.freedom-substitute.fr
Avant tout, petite explication du programme pour y voir plus clair :
8 / 12
ProgressBar en C# et Windows Form - 04-17-2016
Par DjezusKryst de FREEDOM SUBSTITUTE - http://www.freedom-substitute.fr
Voilà le programme qui nous servira de test pour cette partie, il permet à un utilisateur de choisir tout
d’abord le nombre d’heures de son forfait puis le nombre d’SMS et enfin les options.
Entre chaque étapes la barre de progrès se déplace pour aller jusqu’à atteindre 100%. Quand c’est le cas
le bouton confirmer s’affiche en même temps.
Chaque étape est cachée tant que la précédente n’est pas remplie, ce qui rend la barre de progrès encore
plus utile et évite à l’utilisateur d’avoir un programme surchargé dès le début et de se concentrer sur
l’étape en cours.
Nous allons maintenant analyser un bout de code permettant de faire avancer la barre quand l’utilisateur
sélectionne un objet !
9 / 12
ProgressBar en C# et Windows Form - 04-17-2016
Par DjezusKryst de FREEDOM SUBSTITUTE - http://www.freedom-substitute.fr
Ceci est le code du bouton « 1 heure » dans la section concernant le nombre d’heures dans le forfait.
Ce qui nous intéresse ici, c’est les deux encadrés rouges représentant une action du programme sur la
ProgressBar :
progressBar1.Value = 35;
Fait avancer la barre jusqu’à 35% de sa taille maximale.
progressBar1.Visible = true;
10 / 12
ProgressBar en C# et Windows Form - 04-17-2016
Par DjezusKryst de FREEDOM SUBSTITUTE - http://www.freedom-substitute.fr
Permet d’afficher la barre seulement quand l’utilisateur appuis sur le bouton.
C’est les seules opérations basiques requises dans notre programme !
À présent, nous allons voir (encore) un autre bout de programme plus compliqué permettant une
animation de la barre pendant un certain temps à l’aide d’un « timer » …
11 / 12
ProgressBar en C# et Windows Form - 04-17-2016
Par DjezusKryst de FREEDOM SUBSTITUTE - http://www.freedom-substitute.fr
Ce code permet d’animer la barre pendant un temps voulu jusqu’à un certain pourcentage.
Pour appeler cette fonction par la suite, il suffit de compléter notre code de ces deux lignes :
Il est possible de changer la durée de l’animation en changeant la valeur après « AnimateProgBar »
Et voilà vous disposez d’une barre qui s’anime au fil du temps qui passe ! ?
Télécharger l’exemple
Télécharger
_______________________________________________
FREEDOM SUBSTITUTE
12 / 12
Powered by TCPDF (www.tcpdf.org)

Documents pareils