Maintenant que RAD Studio 11 est sorti, je souhaite revenir sur certaines de ses nouvelles fonctionnalités, à commencer par les améliorations de la VCL.
Parmi les nouvelles fonctionnalités de Delphi 11, C++ Builder 11 et RAD Studio 11, un domaine dont je suis très satisfait est le travail que l’équipe a effectué sur les composants de base de la VCL, répondant à un certain nombre de demandes en attente depuis un certain temps. Revenons à quelques-uns d’entre eux.
Table of Contents
Le nouveau contrôle RichEdit
La nouvelle fonctionnalité la plus visible est la migration de TRichEdit vers la version la plus récente de la plate-forme, le contrôle RichEdit 4.1 implémenté par MSFTEDIT.dll. Outre une amélioration générale, les nouveaux contrôles offrent des fonctionnalités telles que la vérification orthographique, la reconnaissance d’URL, la transparence, avec de nouvelles propriétés qui incluent Transparent, EnableURLs, SpellChecking et le nouvel événement OnLinkClick.
Les champs des attributs de texte RichEdit ont été considérablement améliorés. Ceci est une image de la démo que j’ai utilisée dans le webinaire de lancement de RAD 11 .
Vous pouvez trouver une très belle couverture détaillée dans la vidéo YouTube d’Alister Christie « Améliorations de TRichEdit – Delphi #188 ». Notez également que la propriété Lines du composant TDBRichEdit est désormais publique.
Un TreeView avec des cases à cocher
Une autre caractéristique importante est la prise en charge supplémentaire des cases à cocher dans le contrôle TreeView de la plate-forme. Ceci est maintenant disponible dans le contrôle TTreeView. Les cases à cocher prennent en charge plusieurs états et peuvent être ajoutées à l’arborescence régulière. En fait, la nouvelle énumération TNodeCheckState peut prendre les valeurs suivantes : ncsNone, ncsUnchecked, ncsChecked, ncsPartial, ncsDimmed, ncsExclusion.
Ci-dessous, vous pouvez voir une image avec un TreeView avec des cases à cocher en action :
Le nouveau DBLabeledModifier
Il existe également un nouveau contrôle VCL de marque dans cette version, une version dataware de LabeledEdit – une combinaison d’une modification avec son étiquette. C’est pratique car vous n’avez qu’à gérer la position de l’édition, et l’étiquette vient à côté (ou au-dessus, selon la configuration). Notez que dans la version orientée données, lorsque vous affectez un champ au contrôle, la valeur de l’enregistrement en cours est affichée dans l’édition tandis que le nom du champ devient la valeur par défaut de l’étiquette. Ci-dessous, vous pouvez voir à quel point il est facile de configurer cela à l’aide du menu Édition rapide :
Prise en charge de plusieurs images TWICImage
La classe TWICImage (l’une des options d’implémentation du contrôle TImage) est un wrapper autour du composant Windows Imaging de la plate-forme. La seule fonctionnalité de cette classe wrapper est la prise en charge de plusieurs cadres. Ceci est exposé par deux nouvelles propriétés : FrameCount et FrameIndex. Vous définissez FrameIndex pour indiquer l’image souhaitée à partir d’une image à plusieurs images (telle qu’un fichier TIFF à plusieurs images).
Et beaucoup plus
Il existe de nombreuses fonctionnalités plus petites qui méritent d’être mentionnées, car elles peuvent offrir un avantage immédiat à vos applications existantes :
- Coolbar prend en charge Chevron via une nouvelle propriété booléenne ShowChevron
- La classe de base TWinControl propose désormais les méthodes LockDrawing et UnlockDrawing, pour désactiver et contrôler la mise à jour. Cela déclenche l’exécution du message Windows WM_SETREDRAW. Cela vaut probablement son propre article de blog…
- La classe TNumberBox a quelques fonctionnalités supplémentaires : il y a une nouvelle propriété ValueCurrency et la propriété DisplayFormat est maintenant publiée
- Le VCL StyleUtils.inc a été converti en une unité régulière
- Boîtes de dialogue courantes expliquant comment exposer les propriétés EncodingIndex et ShowEncodingList
- Il y a un nouvel événement OnTracking pour TTrackbar
- Il existe un paramètre CheckTabEnabled supplémentaire dans TPageControl.FindNextPage pour ignorer les onglets désactivés
- TButtonCategory a une propriété VisibleGutter.
- TScrollBox prend automatiquement en charge la molette de la souris – notez que ce changement peut affecter le comportement des applications existantes
- Fonction VCL ScaleImage prend en charge Alpha Channel
- La taille du formulaire par défaut est maintenant plus grande
- SetSelText et SetSelTextBuf offrent la possibilité de ne pas réinitialiser le tampon d’annulation
- TCustomTitleBarPanel a maintenant les propriétés TitleButtonClose, TitleButtonRestore, TitleButtonMin et un événement OnUpdateTitlebarButtons.
- TDateTimePicker permet de modifier à la fois la date et l’heure dans l’interface utilisateur
Conclusion
Si vous avez l’impression qu’il y a beaucoup de nouveautés dans la VCL de RAD Studio 11… eh bien, c’est une impression correcte. Plutôt que de tout nouveaux composants de carillon, l’accent a été mis sur la correction de nombreuses lacunes plus petites et sur la modernisation et la robustesse de la bibliothèque globale, car l’équipe a également résolu un nombre important de problèmes ouverts. J’espère que tous les développeurs utilisant la bibliothèque VCL apprécient l’effort et nous sommes toujours ouverts aux idées et suggestions supplémentaires.
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition