Changer la couleur de sa form [Résolu]

Signaler
Messages postés
87
Date d'inscription
jeudi 5 novembre 2009
Statut
Membre
Dernière intervention
3 janvier 2012
-
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
-
Bonsoir,

J'ai une form qui reste constamment en premier plan sur le bureau (style de widget si on veut). Cette forme est composé d'une textbox uniquement. J'aimerais que lorsque l'utilisateur tape couleur et appuie sur entrée, la form change de couleur. Je me suis dit que j'allais faire comme suit :

Tableau(0) = "color.darkColor"
Tableau(1) = "color.Indian Red"
etc...

QUand l'utilisateur tape couleur, le programme détecte la couleur actuel, va chercher dans tableau sa position et fait tableau(X) + 1 ainsi de suite...

Mon problème est que je n'ai pas réussi à trouver quel commande permet de connaitre la couleur actuel de la fom..

Et ensuite, y'a t'il un moyen plus simple ??

Merci !

3 réponses

Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
35
salut,

tu compares une couleur, de type system.drawing.color à une chaine
l'erreur est justifiée non?

après le type COLOR supporte la reconnaissance par chaine mais faut l'utiliser dans ce cas

Me.BackColor = System.Drawing.Color.FromName("AliceBlue")


++
[hr]
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
68
Salut
Pas bien compris ton histoire de tableau, mais pour écrire ou lire la couleur d'une forme :
maForme.BackColor

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
87
Date d'inscription
jeudi 5 novembre 2009
Statut
Membre
Dernière intervention
3 janvier 2012

Bonsoir,

Je m'explique pour le tableau.

J'ai une form auquelle je veux modifier la couleur de fond quand j'ai envie par mot clé dans une textbox. Exemple, aujourd'hui je veux ma form en rouge, donc je vais dans ma textbox, et je tape le mot clé "couleur" jusqu'à avoir le rouge.

Niveau programmation, je n'ai pas trouvé mieux que de faire un tableau avec 10 couleur que j'ai choisi :

Dim tableauCouleur(10) As String
tableauCouleur(0) = "Color.DarkRed"
tableauCouleur(1) = "Color.IndianRed"
tableauCouleur(2) = "Color.Chocolate" etc


Lorsque l'utilisateur rentre "couleur", le programme compare la couleur actuel de la form et retrouve sa position dans le tableau. Il sait alors que c'est tableaucouleur (i+1) qu'il faut appliquer :

i = 0
If Me.BackColor <> tableauCouleur(i) Then
etc..
End If

Mais à ce niveau la j'ai une erreur de "surcharge" d'aprés VB... Quelqu'un sais pourquoi ??? Merci