Overblog Suivre ce blog
Editer l'article Administration Créer mon blog
27 septembre 2011 2 27 /09 /septembre /2011 15:46

Considérons le code suivant représentant une énumération des jours de la semaine :

 

 Public Enum Days 
 Sunday 
 Monday 
 Tuesday 
 Wednesday 
 Thursday 
 Friday 
 Saturday 
 End Enum 

 

Avec cette énumération on peut facilement changer la valeur d’une variable en faisant ceci :

 

 Dim myDay as Integer = Days.Sunday 

 

Mais qu’en est-il si nous devions spécifier plusieurs jours ou tous les jours. Pour ce faire nous devons rendre notre énumération Bit-Wise en y ajoutant l’attribut <Flags()> et en donnant une valeur à la puissance 2 à tous les éléments :

 

 

 <Flags()> _ 
 Public Enum Days 
 Sunday = 1 
 Monday = 2 
 Tuesday = 4 
 Wednesday = 8 
 Thursday = 16 
 Friday = 32 
 Saturday = 64 
 All = Sunday Or Monday Or Tuesday Or Wednesday Or Thursday Or Friday Or Saturday 
 End Enum 

Remarquez que j’ai ajouté “All” permettant de spécifier tous les jours.

Avec cette énumération il est désormais possible de faire :

 

 Dim myDays as Days 
 myDays = myDays Or Sunday Or Friday ' Ajoute le Dimanche et le Vendredi 
 myDays = myDays And Not Saturday ' Enlève le Samedi 

 

Pour savoir si le Dimanche a été choisi il faut faire ceci :

 

 If (myDays And Days.Sunday) = Days.Sunday Then 
 ' mon code du Dimanche 
 End If 

Partager cet article

Repost 0
Published by Cyril - dans VB.NET
commenter cet article

commentaires