Couleur textBox si valeur comprise entre deux valeurs sous VB.net

Fermé
Vengert60 Messages postés 6 Date d'inscription dimanche 21 juin 2020 Statut Membre Dernière intervention 13 décembre 2020 - 13 déc. 2020 à 03:05
Whismeril Messages postés 19145 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 29 septembre 2024 - 13 déc. 2020 à 19:23
Bonsoir le Forum ,

Je suis en route de créer un petit code sous VB.net qui vérifie la valeur présente dans un TextBox et qui modifie la couleur du texte en fonction .

Lorsque c'est un mot simple ou une seul valeur unique , j'y arrive

If TBox1.Text = "N.C" Then
TBox1.ForeColor = Color.FromArgb(255, 0, 0) ' Rouge
End If

OU

If TBox1.Text = "10" Then
TBox1.ForeColor = Color.FromArgb(255, 0, 0) ' Rouge
End If


Mais lorsque la valeur peut être comprise par exemple entre 10 et 15 = Couleur1 puis valeur entre 15 et 20 = Couleur2 , la ça se complique.

J'ai fait plusieurs recherche sur le Web (même sous C# qui à le retraduire après) mais rien, pour Excel oui mais pas pour VB.Net .

Est ce que quelqu'un à une petite idée ?

Cdlt Vengert60.

3 réponses

Whismeril Messages postés 19145 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 29 septembre 2024 919
Modifié le 13 déc. 2020 à 10:30
Bonjour

Tout d’abord, pour tes prochains messages, merci de lire et d’appliquer ce petit tuto https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Ensuite, une petite simplification de ton code actuel.
Tu n’as pas précisé si tu travailles en winform, en wpf, en asp etc...

Alors je vais parier sur winform.

If TBox1.Text = "N.C" Then 
             TBox1.ForeColor = Color.Red 'et oui la classe Color (en winform) dispose de nombreuses couleurs prérenseignées
End If 



Maintenant ton problème vient du fait que la propriété Text, c’est du texte (type String).

Quand tu écris 21 sur une feuille de papier, ce 21 c’est du texte.
Et c’est le contexte de ce texte qui dit si ce texte représente un nombre (21 perles par exemple), une date (21 janvier 2020), un lieu (21 rue Machin etc).

Ton Textbox c’est la version virtuelle de la feuille, il contient du texte.
Si tu « sais » que c’est un nombre, il faut d’abord le convertir en nombre pour en faire des calculs

Convertir du texte en nombre peut s’avérer plus complexe qu’il n’y parait.
Voir ce tuto https://codes-sources.commentcamarche.net/faq/11316-conversion-de-string-en-nombre-en-net-c-et-vb-net


Cependant, ce problème est plutôt basique, c’est pourquoi je fais la supposition suivante
  • tu est autodidacte
  • tu débutes
  • tu as mis la charrue avant les boeufs, à savoir te lancer dans ton projet bille en tête en faisant l’impasse sur les bases


Et bien sache que suivre un cours en ligne sur les bases de vb.net te prendrait quelques jours, au regard des centaines d’heures de recherche infructueuses par ce que mal formulées.
Donc le meilleur conseil que je puisse te donner c’est de suivre un cours en ligne qui te donnera le socle nécessaire à débuter ta formation
Par exemple
https://tahe.developpez.com/dotnet/vbnet/


0
Vengert60 Messages postés 6 Date d'inscription dimanche 21 juin 2020 Statut Membre Dernière intervention 13 décembre 2020
13 déc. 2020 à 18:36
Bonjour Whismeril , le Forum,

Merci pour le temps que tu as pris à me répondre .

Oui je débute et en mode Autodidacte .

Avant je faisait tout avec excel et les Userform et maintenant je me lance sous VB.Net.

Je vais regarder les différents lien que tu ma proposé.

Encore Merci.

Cdlt Vengert60 .
0
Whismeril Messages postés 19145 Date d'inscription mardi 11 mars 2003 Statut Contributeur Dernière intervention 29 septembre 2024 919
13 déc. 2020 à 19:23
De rien.

Pense à marquer le sujet résolu, si cela est le cas.
0