bloc1:evenementiel2
Différences
Ci-dessous, les différences entre deux révisions de la page.
| Prochaine révision | Révision précédente | ||
| bloc1:evenementiel2 [2023/01/19 22:12] – créée techer.charles_educ-valadon-limoges.fr | bloc1:evenementiel2 [2023/01/19 22:35] (Version actuelle) – techer.charles_educ-valadon-limoges.fr | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| ====== Fiche savoirs : programmation événementielle en C# partie 2 ====== | ====== Fiche savoirs : programmation événementielle en C# partie 2 ====== | ||
| + | ===== Limiter les accès aux objets graphiques ===== | ||
| + | |||
| + | Il est possible de rendre un objet graphique inaccessible. Cela peut permettre d’éviter certains tests et rend l’interface plus parlante pour l’utilisateur : il voit qu’il ne peut pas accéder à l’objet. | ||
| + | |||
| + | <code c#> | ||
| + | btnSupprimer.Enabled = false; | ||
| + | </ | ||
| + | |||
| + | ===== Rendre invisible un objet objet graphique ===== | ||
| + | |||
| + | Il est possible de rendre un objet graphique inaccessible. Cela peut permettre d’éviter certains tests et rend l’interface plus parlante pour l’utilisateur : il voit qu’il ne peut pas accéder à l’objet. | ||
| + | |||
| + | <code c#> | ||
| + | btnSupprimer.Visible = false; | ||
| + | </ | ||
| + | |||
| + | ===== Gérer le focus ===== | ||
| + | |||
| + | Il est possible de définir l' | ||
| + | |||
| + | <code c#> | ||
| + | txtTitre.Focus(); | ||
| + | </ | ||
| + | |||
| + | ===== Optimiser le code avec des fonctions ===== | ||
| + | Les optimisations sont pour éviter des répétitions de code en plaçant un code utilisable plusieurs fois dans une fonction. | ||
| + | |||
| + | Exemple pour gérer la reposition du focus qui doit se faire plusieurs fois sur la même zone de texte. | ||
| + | |||
| + | Il est possible de créer automatiquement une fonction non événementielle à partir de ligne(s) de code sélectionnée(s). | ||
| + | |||
| + | === Sélectionner le code à isoler : === | ||
| + | À n’importe quel endroit, sélectionnez la ligne de code qui gère la position du focus sur la zone de texte. | ||
| + | |||
| + | <code c#> | ||
| + | txtTitre.Focus(); | ||
| + | </ | ||
| + | |||
| + | === Demander de refactorisation : === | ||
| + | |||
| + | Clic droit sur la sélection et, dans le menu qui s’affiche, | ||
| + | {{: | ||
| + | |||
| + | === Demander de création de la procédure : === | ||
| + | Dans le nouveau menu, sélectionnez **Extraire une méthode** : | ||
| + | * il va y avoir la création d’une méthode **NewMethod** contenant le code sélectionné. | ||
| + | * Remplacement de la sélection par l’appel de la méthode. | ||
| + | {{: | ||
| + | |||
| + | === Renommer la méthode : === | ||
| + | |||
| + | Il vous est directement proposé de renommer la méthode. | ||
| + | |||
| + | Directement sur le nom actuel qui est sur fond vert, tapez un nouveau nom (par exemple **GestionZoneDeSaisie**) : | ||
| + | * remarquez que le nom de l’appel se change en même temps. | ||
| + | * Validez ou cliquez sur **Appliquer**. | ||
| + | La méthode est créée ainsi que le premier appel. | ||
| + | |||
| + | {{: | ||
| + | {{: | ||
| + | |||
| + | |||
| + | === Appeler la méthode : === | ||
| + | |||
| + | Partout où se trouve la ligne de code qui permet de remettre le focus sur la zone de texte, remplacez la ligne par l’appel de la méthode. | ||
| + | <code c#> | ||
| + | private void frmFilms_Load(object sender, EventArgs e) | ||
| + | { | ||
| + | lblTitre.Text = ""; | ||
| + | GestionZoneDeSaisie(); | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | |||
| + | Par exemple, au chargement du formulaire. | ||
| + | Logiquement, | ||
| + | <code c#> | ||
| + | private void GestionZoneDeSaisie() | ||
| + | { | ||
| + | | ||
| + | | ||
| + | } | ||
| + | </ | ||
| + | |||
bloc1/evenementiel2.1674162740.txt.gz · Dernière modification : 2023/01/19 22:12 de techer.charles_educ-valadon-limoges.fr
