Convertir String contenant Color : [couleur] en Color.couleur...

Résolu
tinux Messages postés 244 Date d'inscription mercredi 13 avril 2005 Statut Membre Dernière intervention 21 octobre 2013 - 2 août 2006 à 22:31
tinux Messages postés 244 Date d'inscription mercredi 13 avril 2005 Statut Membre Dernière intervention 21 octobre 2013 - 3 août 2006 à 11:33
Bonjour à tous !

Voilà dans un fichier .ini j'ai enregistré les valeurs ForeColor d'un Label1  et BackColor d'un Label2 ainsi qu' une catégorie que l'on entre dans un textbox.

Voilà ce que ça me donne par exemple pour une catégorie que j'ai nommée "Cellule1" dans le fichier ini :

[Cellule1]
CouleurText=Color [Black]
CouleurCell=Color [Olive]

ok.

Le problème c'est que maintenant, dans une autre partie de l'appli, je voudrais appliquer ces couleurs, je récupère donc les valeurs des cléfs CouleurText et CouleurCell.. ok seulement, il me met une erreur bien sur car un string ne peut pas être converti en System.Drawing.Color.

Avez vous une idée pour convertir ? ou une autre manière d'enregistrer la couleur ? merci !
A voir également:

4 réponses

Utilisateur anonyme
3 août 2006 à 10:48
T'est sur que tu t'est pas tromper de contrôle ou que ton texte est blanc et le back noir ?
Moi j'ai:
-1: blanc
-16777216: noir
-989556: khaki
-16776961: bleu



Kenji



Il était une fois, un pauvre petit règlement que personne ne lisait. Il est tout sympa mais il est triste, aidez-le, lisez-le, ca lui ferait plaisir ainsi qu'a nous. Merci
3
Utilisateur anonyme
3 août 2006 à 00:28
Et non, ca marche pô
Il faut utiliser ToArgb et FormArgb:




SaveVersTonFichier
= Label1.ForeColor.ToArgb()

Label1.ForeColor = System.Drawing.Color.FromArgb(CouleurDuFichier)





Kenji



Il était une fois, un pauvre petit règlement que personne ne lisait. Il est tout sympa mais il est triste, aidez-le, lisez-le, ca lui ferait plaisir ainsi qu'a nous. Merci
0
tinux Messages postés 244 Date d'inscription mercredi 13 avril 2005 Statut Membre Dernière intervention 21 octobre 2013
3 août 2006 à 10:32
Ok je viens de faire ça, je n'ai plus d'erreurs mais le texte ne reste qu'en blanc... Je précise que je suis en VB.Net au cas où...

J'ai rentré par exemple : forecolor : bleu ; backcolor : khaki, dans mon fichier ini ça me donne ceci :
[Cellule1]
CouleurText=-1
CouleurCell=-16777216

Et ce quelque soit la couleur rentrée... voici le code que j'ai fait pour enregistrer :

Dim cRubrique As String = TextBox1.Text 'Nom de la rubrique
Dim cIniFile As String = "C:\WINDOWS\Coloration.ini" 'Nom du fichier Ini
Dim bOk As Boolean
bOk = Put_Private_Profile_String(cRubrique, "CouleurText", Label2.ForeColor.ToArgb(), cIniFile)
bOk = Put_Private_Profile_String(cRubrique, "CouleurCell", Label5.ForeColor.ToArgb(), cIniFile)

et bien sur j'ai déclarer les f° plus haut mais je ne pense pas que ce soit nécéssaire... et dans ma deuxième form j'ai mis ceci :

Dim cRubrique As String = "Cellule1"    'Nom de la rubrique
Dim cKey As String = "CouleurText"     'Nom de la clé
Dim cKey1 As String = "CouleurCell"
Dim cValeur As String = Space(255)        'Variable pour la string          '
Dim cValeur1 As String = Space(255)
Dim cIniFile As String = "C:\WINDOWS\Coloration.ini"         'Nom du fichier Ini

Dim istat As Integer
Dim istat1 As Integer

istat = Get_Private_Profile_String(cRubrique, cKey, "", cValeur, cIniFile)
istat1 = Get_Private_Profile_String(cRubrique, cKey1, "", cValeur1, cIniFile)

L1TextBox.ForeColor = System.Drawing.Color.FromArgb(cValeur)
L1TextBox.BackColor = System.Drawing.Color.FromArgb(cValeur1)

Merci de ton aide !
0
tinux Messages postés 244 Date d'inscription mercredi 13 avril 2005 Statut Membre Dernière intervention 21 octobre 2013
3 août 2006 à 11:33
Exacte, j'avais pas fait attention : je prenais le Forecolor de mon label de couleur et non pas le BackColor [damn]

Désolé lol en tout cas merci, un problème de résolu ! Au passage j'ai visité un peu tes sources : chapeau ^ :D
0
Rejoignez-nous