IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C# Discussion :

comparé un Brushes avec une chaîne de caractère


Sujet :

C#

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2011
    Messages : 22
    Points : 9
    Points
    9
    Par défaut comparé un Brushes avec une chaîne de caractère
    Bonjour à tous,

    Je suis en train de faire un puissance 4 en wpf. Dans le jeu, l'utilisateur peut choisir la couleur de ses jetons.

    Avant, quand il avait par défaut la couleur jaune, c'était facile pour placer un jeton dans la grille de jeu avec la couleur correspondante au joueur

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    arrayImage[ligneBouton, colonneBouton].Fill = Brushes.Red;
    arrayImage étant le tableau logique contenant des références vers les ellipses, ligneBouton et colonneBouton l'endroit exact où l’utilisateur souhaite placer son jeton.

    maintenant je suis "obligé" de faire ceci
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (ColorChosen.Equals("Red"))
    {
       arrayImage[ligneBouton, colonneBouton].Fill = Brushes.Red;
    }
    N'y a t'il pas moyen de simplifier en mettant quelque chose du genre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    if (ColorChosen == "Red") 
    {
       Color couleur = Brushes.Red 
    }
    // faire ceci qu'au début du programme, et ensuite pouvoir à chaque fois faire :
    arrayImage[ligneBouton,colonneBouton].Fill = couleur
    Parce qu'en fait c'est surtout dans mes tests pour savoir s'il va y'avoir un puissance 4 que ça va vrmt être long à gérer..surtout si j'offre la possibilité de choisir plus de deux couleurs pour les jetons
    D'avance, merci pour vos réponses !

  2. #2
    Membre expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Points : 3 015
    Points
    3 015
    Par défaut
    Salut,

    Oui, si j'ai bien compris. Avec le code suivant par exemple:
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    // Variable à définir dans ta classe
    private Color couleur = Brushes.Blue;
     
    private void UneFonction() {
      // cette fonction affecte la couleur à la variable 'couleur'
      if (ColorChosen == "Red") 
      {
         couleur = Brushes.Red;
      }
    }
     
      // ensuite tu vas pouvoir à chaque fois faire :
      arrayImage[ligneBouton,colonneBouton].Fill = couleur;

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2011
    Messages : 22
    Points : 9
    Points
    9
    Par défaut
    oui oui ça j'y avais déjà pensé.. j'aurais peut être du préciser dans mon exemple que justement cette ligne là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Color couleur = Brushes.Blue;
    était incorrecte
    erreur : impossible de convertir implicitement le type System.Windows.Media.SolidColorBrush en System.Windows.Media.Color
    donc ce que je cherche c'est une alternative à ça, comment je pourrais arriver à "créer une instance permanente de Brushes" que je pourrais utiliser plusieurs fois (j'espère que c'est clair, j'arrive pas à expliquer ça autrement.. )

  4. #4
    Membre expert
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    2 210
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 210
    Points : 3 015
    Points
    3 015
    Par défaut
    J'ai pas tilté (j'ai recopié sans trop analyser).

    C'est un Brush que tu dois utiliser :
    Code c# : Sélectionner tout - Visualiser dans une fenêtre à part
          System.Windows.Media.Brush couleur = System.Windows.Media.Brushes.Blue;

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Novembre 2011
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2011
    Messages : 22
    Points : 9
    Points
    9
    Par défaut
    Ca marche niquel !

    un grand merci pour ton aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [WD20] Une petite embrouille avec une chaîne de caractères
    Par JohnVist dans le forum WinDev
    Réponses: 10
    Dernier message: 29/01/2015, 15h20
  2. Problème avec une chaîne de caractère en argument de fonction
    Par R3v3n4nt dans le forum Interfaces Graphiques
    Réponses: 0
    Dernier message: 09/03/2013, 13h10
  3. [AC-2003] Comparer un Textbox avec une chaîne de caractère
    Par Sprsrini dans le forum VBA Access
    Réponses: 4
    Dernier message: 14/09/2009, 12h28
  4. souci avec une chaîne de caractères
    Par salseropom dans le forum C
    Réponses: 2
    Dernier message: 31/03/2009, 11h17
  5. [PHP-JS] Comparaison un URL avec une chaîne de caractères
    Par moustique95 dans le forum Langage
    Réponses: 5
    Dernier message: 06/08/2008, 10h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo