Implémenter le compteur en C#

Haider Ali 12 octobre 2023
Implémenter le compteur en C#

Dans ce guide, nous verrons comment créer un compteur d’incrémentation et de décrémentation en C# à l’aide de deux boutons. Par exemple, s’il y a deux boutons, A et B.

Appuyer sur A et B devrait incrémenter le compteur, et appuyer sur A et B devrait décrémenter le compteur, respectivement. Plongeons dans ce guide et apprenons nous-mêmes.

Implémenter le compteur en C#

Dans ce problème, nous avons besoin de deux variables. Premièrement, nous avons besoin d’une variable pour le compteur, et deuxièmement, nous en avons besoin d’une pour vérifier le dernier bouton enfoncé.

Voyons comment nous allons faire cela. Au début, nous devrons créer des délégués d’événement, de sorte qu’un certain événement devrait se produire chaque fois qu’un bouton est cliqué.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace counter {
  class MyForm : Form {
    // Window  From Code
    Button buttonA;
    Button buttonB;

    void InitializeComponent() {
      buttonA.Clicked += Button_A_Click;  // btn_Clicked Event.. delgates..
      buttonB.Clicked += Button_B_Click;
    }
  }

}

Dans le code ci-dessus, nous avons créé deux boutons et attribué des délégués d’événement. La fonction Button_A_Click s’exécutera chaque fois qu’un boutonA sera cliqué.

Ensuite, nous devons avoir deux variables. Regarde.

Button LastPressed = null;  // Track which button was last pressed.
int counter = 0;            // initializing Counter Value

Le LastPressed suivra quel bouton a été pressé en dernier, et le compteur suivra l’incrémentation et la décrémentation. La prochaine chose dont nous avons besoin est d’avoir deux fonctions qui suivent tout cela.

void Button_A_Click(object source, EventArgs e) {
  if (LastPressed == buttonB)  // verifying which button is being pressed.
  {
    // button B was pressed first, so decrement the counter
    --counter;  // decrementing...
    // reset state for the next button press
    LastPressed = null;  // again button set to null for next tracking..
  } else {
    LastPressed = buttonA;  // assging which button was pressed.
  }
}

void Button_B_Click(object source, EventArgs e) {
  if (LastPressed == buttonA) {
    // buttonA was pressed 1st, so increment the counter
    ++counter;
    // reset state for the next button press
    LastPressed = null;
  } else {
    LastPressed = buttonB;
  }
}

Si buttonA est cliqué, le programme vérifiera la valeur dans le LastPressed. Si c’est buttonB, le compteur décrémentera; si ce n’est rien, buttonA sera assigné au LastPressed.

Il en va de même pour buttonB ; si le LastPressed était A, il incrémenterait le compteur ; sinon, buttonB sera attribué. C’est ainsi que vous créez un programme d’incrémentation et de décrémentation d’un compteur en C#.

Voici le code complet.

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace counter {
  class MyForm : Form {
    // Window  From Code
    Button buttonA;
    Button buttonB;

    void InitializeComponent() {
      buttonA.Clicked += Button_A_Click;  // btnB_Clicked Event.. delgates..
      buttonB.Clicked += Button_B_Click;
    }

    Button LastPressed = null;  // Track which button was last pressed.
    int counter = 0;            // initializing Counter Value

    void Button_A_Click(object source, EventArgs e) {
      if (LastPressed == buttonB)  // verifying which button is being pressed.
      {
        // button B was pressed first, so decrement the counter
        --counter;  // decrementing...
        // reset state for the next button press
        LastPressed = null;  // again button set to null for next tracking..
      } else {
        LastPressed = buttonA;  // assging which button was pressed.
      }
    }

    void Button_B_Click(object source, EventArgs e) {
      if (LastPressed == buttonA) {
        // buttonA was pressed 1st, so increment the counter
        ++counter;
        // reset state for the next button press
        LastPressed = null;
      } else {
        LastPressed = buttonB;
      }
    }
  }

}
Auteur: Haider Ali
Haider Ali avatar Haider Ali avatar

Haider specializes in technical writing. He has a solid background in computer science that allows him to create engaging, original, and compelling technical tutorials. In his free time, he enjoys adding new skills to his repertoire and watching Netflix.

LinkedIn