Section 2 Navigation et navigation
Il existe deux manières différentes de créer des formulaires accédant aux données de la base de données. La première méthode consiste à utiliser Database Form Expert. Malheureusement, les experts en formulaires de base de données ne peuvent gérer que le sous-ensemble compatible BDE (BDE visuel) du composant ensemble de données. La deuxième méthode consiste à placer et connecter manuellement tous les composants de données.
Définir l'interface utilisateur
Nous allons créer notre propre formulaire de navigation de données en trois étapes. La première étape consiste à définir l'interface utilisateur du formulaire ; la deuxième étape consiste à ajouter et à configurer les composants d'accès aux données ; la troisième et dernière étape consiste à ajouter des contrôles de visualisation des données.
Avant de commencer, fermez tous les projets ouverts. Procédez ensuite aux étapes suivantes :
DBNavigator1.DataSource = DataSource1
DBGrid1.DataSource = DataSource1
DataSource1.DataSet = ADOTable1
ADOTable1.Connexion = ADOConnexion1
ADOConnection1.ConnectionString = ...
ADOConnection1.LoginPRompt = Faux
ADOTable1.Table = 'Applications'
Remarque : Comme indiqué au chapitre 2, la propriété ConnectionString indique l'emplacement physique où les données sont stockées et comment nous y accédons. Vous pouvez utiliser la même chaîne de connexion qu'au chapitre 2, ou en créer une vous-même en appelant l'éditeur de chaîne de connexion.
Définissez la propriété LoginPrompt du composant ADOConnection sur False pour empêcher l'interface de connexion à la base de données d'apparaître. Puisque nous n'avons défini aucun mot de passe pour la base de données, nous n'avons pas besoin d'invite de connexion.
Champs
Lorsque nous souhaitons fournir aux utilisateurs l'intégralité du jeu d'enregistrements (données dans le tableau), nous pouvons utiliser le composant DBGrid. Même si nous pouvons utiliser DBGrid pour permettre à nos utilisateurs d'ajouter, de modifier et de supprimer des enregistrements dans la table, le meilleur moyen est d'utiliser des objets Field pour chaque champ de la table. Les objets de champ sont principalement utilisés pour contrôler l'affichage et la modification des données dans les applications. En utilisant l'éditeur de champs, nous pouvons définir une liste fixe d'objets de champ pour chaque colonne du tableau. L'éditeur de champs peut être appelé en double-cliquant sur le composant DataSet. Pour ajouter des champs à la liste des champs fixes d'un ensemble de données, cliquez avec le bouton droit sur la liste et sélectionnez Ajouter des champs.
En plus d'afficher toutes les données du tableau (dans DBGrid) pour l'utilisateur, nous devons également utiliser des composants de visualisation de données orientés champ (orientés champ), tels que des zones d'édition. Par exemple, le composant DBEdit est la version de visualisation de données de la classe TEdit. C’est la pierre angulaire de tout programme de saisie de données.
La manière la plus simple de placer un DBEdit dans un formulaire et de le connecter à un champ de table est la suivante :
Lorsque vous déposez le champ Nom sur la feuille d'étiquettes, Delphi y place un composant Label et un composant DBEdit. La légende du composant Label est la même que la propriété DisplayLabel du champ déplacé. Le composant DBEdit est connecté à la source de données de l'ensemble de données via sa propriété DataSource. Si vous sélectionnez plusieurs champs dans l'éditeur de champs et les placez sur le formulaire, Delphi placera autant de composants Label/DBEdit sur le formulaire.
"C'est vivant !"
OK, il ne nous reste plus qu'à activer la connexion et à faire défiler les enregistrements. La propriété Active d'un composant DataSet (ADOTable) indique si l'on est connecté à une table. En définissant Active sur True ou en appelant la méthode Open, la propriété CONonnected du composant ADOConnection sera True et affichera les données dans le contrôle de visualisation de données associé.
D'abord, passez, enfin,...
Nous effectuons maintenant les derniers préparatifs. Nous apprenons ensuite à parcourir le jeu d'enregistrements.
Le composant DBNavigator fournit un outil convivial et simple pour parcourir les ensembles d'enregistrements. En plus de ses capacités de navigation, DBNavigator fournit également des méthodes pour manipuler les données, telles que l'insertion, la suppression ou l'annulation de modifications. Par exemple, si nous cliquons sur le bouton Supprimer, l'enregistrement correspondant sera supprimé du jeu d'enregistrements. Chaque bouton est facultatif et vous pouvez les mélanger et les assortir comme bon vous semble.
Avec les paramètres des boutons, nous pouvons passer au dernier enregistrement ou passer à l'enregistrement précédent. Par exemple, cliquer sur le bouton Dernier définit l'enregistrement actuel sur le dernier enregistrement du jeu d'enregistrements et désactive les boutons Dernier et Suivant. Cliquer sur le bouton Last a le même effet que d’appeler la méthode Last de l’ensemble de données.
Il convient de noter que l'une des opérations de navigation que DBNavigator ne peut pas gérer consiste à avancer ou reculer les enregistrements d'un certain nombre d'intervalles. La méthode MoveBy d'un ensemble de données est utilisée pour positionner n'importe quel enregistrement par rapport à l'enregistrement actuel dans l'ensemble d'enregistrements.
C'est tout pour ce chapitre. Nous sommes maintenant prêts à apprendre l'édition et l'interrogation de l'ensemble de données, qui seront expliquées dans les prochains chapitres de ce tutoriel...
26 décembre 2002 20:49