Outils pour utilisateurs

Outils du site


issue112:tutoriel2

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
issue112:tutoriel2 [2016/09/02 09:17] auntieeissue112:tutoriel2 [2016/09/02 15:20] (Version actuelle) andre_domenech
Ligne 35: Ligne 35:
 Répondre aux événements Répondre aux événements
  
-Le menu préparé au-dessus répondra bel et bien à certains boutons, mais pas à d'autres. La différence vient de ce que la méthode par défaut HandleEvent de TApplication sait quoi faire quand arrive la commande cmQuit (elle sort, tout simplement). Mais elle n'a pas été programmée pour répondre à d'autres événements, tels que la commande cmHelp que nous avons mis dans l'élément de menu Help > About.+Le menu préparé au-dessus répondra bel et bien à certains boutons, mais pas à d'autres. La différence vient de ce que la méthode par défaut HandleEvent de TApplication sait quoi faire quand arrive la commande cmQuit (elle sort, tout simplement). Mais elle n'a pas été programmée pour répondre à d'autres événements, tels que la commande cmHelp que nous avons mise dans l'élément de menu Help > About.
  
-C'est pourquoi nous remplacerons la méthode HandleEvent existante par la notre. Par exemple :+C'est pourquoi nous remplacerons la méthode HandleEvent existante par la nôtre. Par exemple :
  
-C'est particulièrement important d'inclure l'original de HandleEvent avec le commande « héritée », car elle manipule la commande cmQuit et nous voulons que celle-là fonctionne toujours.+Il est particulièrement important d'inclure l'original de HandleEvent avec le commande « héritée », car elle manipule la commande cmQuit et nous voulons que celle-là fonctionne toujours.
  
-Pour répondre à la commande cmHelp, nous utilisons une simple procédure if pour paramétrer une MessageBox. C'est une façon rapide de créer une boîte de dialogue de message, qui peut être de différents types (Information, Alerte, Erreur). Nous n'allons pas la personnaliser beaucoup, car le paramètre final ne peut contenir que les flags pour déclarer le titre du dialogue et le choix des boutons « OK » et/ou « Cancel » (Annuler). Pour créer une boîte de dialogue plus sophistiquée, nous aurions à écrire notre propre classe (héritée de TWindow ou TDialog), qui, bien que faisable, demanderait un peu plus de travail. Plus de détails dans le troisième article de la série. +Pour répondre à la commande cmHelp, nous utilisons une simple procédure if pour paramétrer une MessageBox. C'est une façon rapide de créer une boîte de dialogue de message, qui peut être de différents types (Information, Alerte, Erreur...). Nous n'allons pas la personnaliser beaucoup, car le paramètre final ne peut contenir que les flags pour déclarer le titre du dialogue et le choix des boutons « OK » et/ou « Cancel » (Annuler). Pour créer une boîte de dialogue plus sophistiquée, nous aurions à écrire notre propre classe (héritée de TWindow ou TDialog), qui, bien que faisable, demanderait un peu plus de travail. Plus de détails dans le troisième article de la série. 
  
 **Setting up a file input box **Setting up a file input box
Ligne 75: Ligne 75:
 La boîte de dialogue obtenue n'a rien de spécial car elle est standard dans Turbo et Free Vision. Elle fonctionne tout simplement et est très réactive. La boîte de dialogue obtenue n'a rien de spécial car elle est standard dans Turbo et Free Vision. Elle fonctionne tout simplement et est très réactive.
  
-Cependant, depuis la dernière fois que j'en ai contemplé une, du temps de MS-DOS, il y a deux points à noter. Le premier est qu'elle semble manipuler correctement un système de fichiers POSIX, avec le séparateur de fichier « / » à la place des « C: » et « \ » spécifiques à MS-DOS. L'utilisateur peut facilement naviguer dans le répertoire home habituel d'Ubuntu. D'autre part, nous pouvons aussi voir que les caractères Unicode dans les noms de fichiers qui n’apparaissent pas dans la page de code ASCII ordinaire (codes jusqu'à 127) sont modifiés, particulièrement les accents dans « Música » et dans « Públic ». C'est peut-être un problème mineur pour certains, ou pour d'autres un problème majeur, si l'environnement visé pour un utilisateur final est principalement en écriture non-latine.+Cependant, depuis la dernière fois que j'en ai contemplé une, du temps de MS-DOS, il y a deux points à noter. Le premier est qu'elle semble manipuler correctement un système de fichiers POSIX, avec le séparateur de fichier « / » à la place des « C: » et « \ » spécifiques à MS-DOS. L'utilisateur peut facilement naviguer dans le répertoire home habituel d'Ubuntu. D'autre part, nous pouvons aussi voir que les caractères Unicode dans les noms de fichiers qui n’apparaissent pas dans la page de code ASCII ordinaire (codes jusqu'à 127) sont modifiés, particulièrement les accents dans « Música » et dans « Públic ». C'est peut-être un problème mineur pour certains, ou pour d'autres un problème majeur, si l'environnement visé pour un utilisateur final est principalement en écriture non latine.
  
 **By this point, we have been using several of Free Vision’s library units, which must be included at the beginning of our program file: **By this point, we have been using several of Free Vision’s library units, which must be included at the beginning of our program file:
Ligne 87: Ligne 87:
 uses App, Objects, Menus, Drivers, Views, Dialogs, MsgBox, StdDlg; uses App, Objects, Menus, Drivers, Views, Dialogs, MsgBox, StdDlg;
  
-Le code complet de cet exemple est sur :  http://pastebin.com/ZTbN7Eft, où le lecteur peut voir les points couverts dans cette partie de la série : personnaliser la barre de menu de Free Vision, répondre aux commandes et utiliser les boîtes de messages et les dialogues par défaut. Dans la prochaine partie, nous regarderons comment connecter notre application à une base de données moderne comme Sqlite3.+Le code complet de cet exemple est sur http://pastebin.com/ZTbN7Eft, où le lecteur peut voir les points couverts dans cette partie de la série : personnaliser la barre de menu de Free Vision, répondre aux commandes et utiliser les boîtes de messages et les dialogues par défaut. Dans la prochaine partie, nous regarderons comment connecter notre application à une base de données moderne comme Sqlite3.
issue112/tutoriel2.1472800651.txt.gz · Dernière modification : 2016/09/02 09:17 de auntiee