Partie III : Créer un composant graphique


précédentsommaire

XIV. Test du composant

Après avoir passé avec succès l'étape de compilation du paquet, il faut tester le composant hors-EDI, ainsi que nous l'avons déjà dit lors de la construction des deux précédents composants.

Nous n'allons pas ici revoir une troisième fois comment tester un composant. La technique a été vue en partie I, section III, et revue en partie II, section IX.

Je vous laisse donc en exercice de révision le test de TCircleChart.

XV. Intégration dans la palette des composants

Afin d'insérer le TCircleChart et toutes ses classes acolytes, rouvrez l'unité RegComposTuto.pas. Commencez par ajouter l'unité CircChart à sa clause uses.

XV-A. Recenser le composant TCircleChart

Pour l'instant, la procédure Register se présente de cette façon :

 
Sélectionnez

procedure Register;
begin
  RegisterComponents('Tutoriel', [TSelectDirDialog, TDropImage]);
end;
				

Pour recenser le composant TCircleChart, ajoutez-le dans le tableau ouvert passé en paramètre.

 
Sélectionnez

RegisterComponents('Tutoriel', [TSelectDirDialog, TDropImage, TCircleChart]);
				

XV-B. Recenser l'action TChartQuarterAction

Afin de parachever le professionnalisme que vous êtes en droit d'exiger de vous-même, il faut encore recenser notre action personnalisée, TChartQuarterAction, afin que celle-ci apparaisse dans la boîte de dialogue Classes d'actions standard.

Ce tour de force est réalisé par la routine RegisterActions, déclarée dans l'unité ActnList. Voici sa déclaration :

 
Sélectionnez

procedure RegisterActions(const CategoryName: string;
  const AClasses: array of TBasicActionClass; Resource: TComponentClass);
				

Le paramètre CategoryName représente la catégorie dans laquelle seront affichées les actions à recenser, dans la boîte de dialogue Classes d'actions standard.

Le paramètre AClasses est un tableau ouvert de classes d'actions indiquant les actions à recenser.

Le troisième paramètre, Resource, doit être positionné à nil dans 99 % des cas. Si vous voulez de plus amples informations sur ce paramètre, reportez-vous à l'aide en ligne de Delphi.

Nous allons donc ajouter l'instruction suivante à la procédure Register :

 
Sélectionnez

RegisterActions('Graphiques', [TChartQuarterAction], nil);
				

La routine RegisterActions n'est pas disponible avec les éditions personnelles de Delphi. Vous ne pourrez donc pas recenser vos propres actions si vous utiliser une telle édition.

XVI. Conclusion

Ainsi se termine notre étude des composants graphiques. Après compilation du paquet de conception, vous aurez l'immense joie de pouvoir jouer avec les collections, les actions, et les événements de TCircleChart.

À travers la réalisation de ce composants, nous avons pu explorer des concepts avancés de la construction de composants tels que les collections, l'interception de messages VCL et Windows, les actions personnalisées, etc.

Vous pouvez télécharger tous les sources présentés dans ce tutoriel, tels qu'ils sont à ce stade.
Si ce lien ne fonctionne pas chez vous, utilisez celui-ci.

Vous êtes invités à réagir à cet article sur les blogs. Merci.

La partie suivante montrera la création de composants acceptant le focus, les composants Windows.

XVII. Liens utiles

Voici quelques liens utiles en rapport avec ce dont avons parlé dans cette partie :

XVIII. Remerciements

Je voudrais adresser un très grand MERCI à Laurent Dardenne pour sa grande aide dans la réalisation de ce tutoriel, autant aux niveaux documentation, fond et forme.

Merci aussi à gege2061 et Bestiol et encore une fois à Laurent Dardenne pour leurs relectures sur la forme et l'orthographe.


précédentsommaire

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

Tutoriels
Les génériques avec Delphi 2009 Win32 (English version) - également disponible en espagnol et en russe
Réaliser un plug-in comportant un composant
Construire une procédure pointant sur une méthode
Création de composants - en 4 parties
Refactoring avec Delphi 2007
Prise en main de Delphi 2005
Analyseurs syntaxiques - Leur fonctionnement par l'exemple
Créer un fichier d'aide HLP
Pourquoi un paramètre const change-t-il mystérieusement de valeur ?
Sources
SJRDUnits - Routines et classes diverses
SJRDComps - Quelques composants
Projet Sepi
Présentation
FAQ Sepi
Programmes
FunLabyrinthe - Jeu de labyrinthe très spécial et très fun
TrickTakingGame - Jeux de cartes à plis en ligne
MultiAgenda - Agenda multi-répertoires
DecodeFormulaires - Décode les formulaires
Excel --> HTML - Convertisseur de tableaux Excel en HTML
AddressLinks - Lie les adresses Internet et e-mail d'un document HTML
Vipion - Tic Tac Toe sur 4x4 cases avec jeu de l'ordinateur
BigCalc - Calculatrice de haut niveau
Espace paroissial Astérion de Watermael-Boitsfort
  

Les sources présentées sur cette page sont libres de droits et vous pouvez les utiliser à votre convenance. Par contre, la page de présentation constitue une œuvre intellectuelle protégée par les droits d'auteur. Copyright © 2005 Sébastien Doeraene. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.