Partage
  • Partager sur Facebook
  • Partager sur Twitter

c# - App WPF Attendre un clik ?

Se mettre en attente de l'appuie sur un bouton de la fenetre ?

Sujet résolu
    26 octobre 2023 à 15:10:52

    Bonjour
    Voici le contexte: c'est un jeu de plateau en application WPF, et je suis débutant.
    Une Main Windows affiche un plateau de jeu et j'ai ajouté quelques classe pour la gestion du jeu.
    Le MainWindow.xaml.cs ressemble à ceci:
    // [...]
     public MainWindow()
     {
         Gameplay GP = new Gameplay();
         Player p1 = GP.getPlayer(0);
         Player p2 = GP.getPlayer(1);
         Player p3 = GP.getPlayer(2);
    
         InitializeComponent();         
      
         textBoxJ1.Text = p1.getPlayerName();
         textBoxJ2.Text = p2.getPlayerName();
         textBoxJ3.Text = p3.getPlayerName();
         GP.startGame(this);
     }
    // [...]
    Jusqu'a présent, et afin de tester, j'avais 3 joueurs CPU parametrer
    Maintenant que c'est bien avancé j'ai parametrer 1 joeur humain, et ce que je veux réaliser et simple:
    à l'interieur de ma classe Gameplay
     
    public async void startGame(MainWindow g)
     {
    // [...]
      while (this.Winner == false)
      {
          if (joueur[0].playerIsHuman)
          {
    	// ICI je souhaite attendre que le joueur est appuyer sur le bouton de la MainWindow
    	// Et j'ignore comment faire 
          } else
          {
    	// Automatisation 
          }
       }
    // [...]
    Question: 
    Comment pourrait je me mettre en attente d'un clik sur on boutton défini dans ma MainWindow  ?
     MainWindow.cs
    // [...]
    <Button x:Name="P1End" Content="Fin de tour" HorizontalAlignment="Left" Margin="10,162,0,0" VerticalAlignment="Top" RenderTransformOrigin="0.126,0.303" Click="P1End_Click"/>
    // [...]

    -
    Edité par PierreYves13 26 octobre 2023 à 15:11:56

    • Partager sur Facebook
    • Partager sur Twitter
      27 octobre 2023 à 10:24:24

      On ne programme pas une application graphique comme une application console.

      Il ne faut pas faire de boucles actives mais utiliser les évènements.

      Le sujet est tagué comme résolu, vous avez peut-être un peu plus progressé dans le cours où il présente les notions de dispatcher graphique ou d'abonnement à des évènements ?

      -
      Edité par bacelar 27 octobre 2023 à 10:24:52

      • Partager sur Facebook
      • Partager sur Twitter
      Je recherche un CDI/CDD/mission freelance comme Architecte Logiciel/ Expert Technique sur technologies Microsoft.

      c# - App WPF Attendre un clik ?

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      • Editeur
      • Markdown