Création d'un bloc-notes Delphi : ouvrir et enregistrer

Femme à l

Images de héros/Getty Images





Tout en travaillant avec diverses applications Windows et Delphes , nous nous sommes habitués à travailler avec l'un des standards Boîtes de dialogue pour ouvrir et enregistrer un fichier, rechercher et remplacer du texte, imprimer, choisir des polices ou définir des couleurs.

Dans cet article, nous examinerons certaines des propriétés et méthodes les plus importantes de ces boîtes de dialogue avec un accent particulier sur Ouvert et sauvegarder Boîtes de dialogue.



Les boîtes de dialogue courantes se trouvent dans l'onglet Boîtes de dialogue de la palette des composants. Ces composants tirent parti des boîtes de dialogue standard de Windows (situées dans une DLL de votre répertoire WindowsSystem). Pour utiliser une boîte de dialogue commune, nous devons placer le ou les composants appropriés sur le formulaire. Les composants communs de la boîte de dialogue ne sont pas visuels (ils n'ont pas d'interface visuelle au moment de la conception) et sont donc invisibles pour l'utilisateur lors de l'exécution.

TOpenDialog et TSaveDialog

Les boîtes de dialogue d'ouverture de fichier et d'enregistrement de fichier ont plusieurs propriétés communes. L'ouverture de fichier est généralement utilisée pour sélectionner et ouvrir des fichiers. La boîte de dialogue Enregistrer le fichier (également utilisée comme boîte de dialogue Enregistrer sous) est utilisée lors de l'obtention d'un nom de fichier auprès de l'utilisateur afin d'enregistrer un fichier. Certaines des propriétés importantes de TOpenDialog et TSaveDialog sont :



  • La Choix les propriétés sont très importantes pour déterminer l'apparence finale de la boîte. Par exemple, une ligne de code comme : |__+_| conservera les options déjà définies et permettra aux utilisateurs de sélectionner plusieurs fichiers dans la boîte de dialogue tout en générant un message d'erreur si l'utilisateur essaie de sélectionner un fichier inexistant.
  • La InitialDir La propriété est utilisée pour spécifier le répertoire qui sera utilisé comme répertoire initial lors de l'affichage de la boîte de dialogue de fichier. Le code suivant garantira que le répertoire initial de la boîte de dialogue Ouvrir est le répertoire de démarrage des applications. |__+_|
  • La Filtre La propriété contient une liste des types de fichiers parmi lesquels l'utilisateur peut choisir. Lorsque l'utilisateur sélectionne un type de fichier dans la liste, seuls les fichiers du type sélectionné sont affichés dans la boîte de dialogue. Le filtre peut facilement être défini au moment de la conception via la boîte de dialogue Editeur de filtres.
  • Pour créer des masques de fichiers dans le code du programme, affectez une valeur à la propriété Filter qui se compose d'une description et d'un masque séparés par une barre verticale (tuyau). Comme ça:
    |__+_|
  • La Nom de fichier propriété. Une fois que l'utilisateur clique sur le bouton OK dans une boîte de dialogue, cette propriété contiendra le chemin complet et le nom du fichier choisi.

Exécuter

Pour réellement créer et afficher une boîte de dialogue commune, nous devons traiter le Exécuter méthode de la boîte de dialogue spécifique lors de l'exécution. À l'exception de TFindDialog et TReplaceDialog, toutes les boîtes de dialogue sont affichées de manière modale.

Toutes les boîtes de dialogue courantes nous permettent de déterminer si l'utilisateur clique sur le bouton Annuler (ou appuie sur ESC). Étant donné que la méthode Execute renvoie True si l'utilisateur a cliqué sur le bouton OK, nous devons intercepter un clic sur un bouton Annuler pour nous assurer que le code donné n'est pas exécuté.

|__+_|

Ce code affiche la boîte de dialogue Ouvrir le fichier et affiche un nom de fichier sélectionné après un appel 'réussi' pour exécuter la méthode (lorsque l'utilisateur clique sur Ouvrir).

Remarque : Exécuter renvoie Vrai si l'utilisateur a cliqué sur le bouton OK, a double-cliqué sur un nom de fichier (dans le cas des boîtes de dialogue de fichiers) ou a appuyé sur Entrée sur le clavier. Exécuter renvoie Faux si l'utilisateur a cliqué sur le bouton Annuler, appuyé sur la touche Échap, fermé la boîte de dialogue avec le bouton de fermeture du système ou avec la combinaison de touches Alt-F4.



À partir du code

Afin de travailler avec Open dialog (ou tout autre) lors de l'exécution sans placer de composant OpenDialog sur le formulaire, nous pouvons utiliser le code suivant :

|__+_|

Remarque : Avant d'appeler Execute, nous pouvons (devons) définir l'une des propriétés du composant OpenDialog.



MonBlocNote

Enfin, il est temps de faire du vrai codage. L'idée derrière cet article (et quelques autres à venir) est de créer une application MyNotepad simple - Windows autonome comme l'application Notepad.
Dans cet article, nous vous présentons les boîtes de dialogue Ouvrir et Enregistrer, alors voyons-les en action.

Étapes pour créer l'interface utilisateur de MyNotepad :
. Démarrez Delphi et sélectionnez Fichier-Nouvelle application.
. Placez un mémo, OpenDialog, SaveDialog deux boutons sur un formulaire.
. Renommez Button1 en btnOpen, Button2 en btnSave.



Codage

1. Utilisez l'inspecteur d'objets pour affecter le code suivant à l'événement FormCreate :

|__+_|

Ce code définit certaines des propriétés de la boîte de dialogue Ouvrir comme indiqué au début de l'article.



2. Ajoutez ce code pour l'événement Onclick des boutons btnOpen et btnSave :

|__+_| |__+_|

Exécutez votre projet. Vous ne pouvez pas le croire; les fichiers s'ouvrent et s'enregistrent comme avec le 'vrai' Bloc-notes.

Derniers mots

C'est ça. Nous avons maintenant notre propre 'petit' bloc-notes.