[FMX] Un dialogue d'ouverture de fichier "stylisé" - partie arborescence

Création d’un dialogue d’ouverture de fichier avec TTreeView en Firemonkey

Dans le cadre de l’utilisation de Firemonkey, un environnement de développement pour les applications Delphi, la création d’un dialogue d’ouverture de fichier nécessite une approche différente de celle du VCL. L’auteur a décidé de développer un dialogue personnalisé, en se concentrant sur l’optimisation du chargement des répertoires.

L’optimisation consiste à ne pas parcourir l’ensemble des répertoires, mais uniquement les répertoires enfants, tout en indiquant la possibilité de branches supplémentaires grâce à un élément dit « fantôme ».

Le code Delphi proposé pour implémenter cette fonctionnalité comprend plusieurs procédures, dont celle pour ajouter des répertoires, créer des nœuds fantômes et gérer les clics sur les éléments de l’arborescence.

Particularités de TTreeView en Firemonkey

Le composant TTreeView en Firemonkey présente certaines limitations par rapport à son homologue VCL, notamment l’absence d’événements tels que OnExpanding. De plus, lors de l’utilisation d’un extenseur, l’événement TreeViewItem.OnClick peut ne pas être déclenché.

Pour contourner ces problèmes, l’auteur a exploré différentes solutions, y compris le surclassement de TTreeViewItem et la désactivation des boutons extenseurs via les styles. Finalement, l’approche la plus efficace a été de modifier le style d’affichage des éléments, en utilisant un TStyleBook et en personnalisant le comportement des boutons.

Résultat final

Le résultat aboutit à un dialogue fonctionnel qui permet d’afficher les répertoires de manière optimisée, tout en offrant une expérience utilisateur améliorée.

Pour plus de détails techniques, le code est disponible dans l’article original.

Source : Développez.net

Source
Partager ici :
Leave a Comment

Comments

No comments yet. Why don’t you start the discussion?

Laisser un commentaire