FMX.ListView.Appearances.TCommonObjectAppearance
Delphi
TCommonObjectAppearance = class(TObjectAppearance, IMovablePersistent)
C++
class PASCALIMPLEMENTATION TCommonObjectAppearance : public TObjectAppearance
Propriétés
Type | Visibilité | Source | Unité | Parent |
---|---|---|---|---|
class | public | FMX.ListView.Appearances.pas FMX.ListView.Appearances.hpp |
FMX.ListView.Appearances | FMX.ListView.Appearances |
Description
Sommaire
Classe de base qui fournit des fonctionnalités au-dessus de TObjectAppearance afin de faciliter la création de nouveaux types d'apparence d'objet.
Voici une liste de classes d'apparence d'objet qui sous-classent TCommonObjectAppearance :
- TAccessoryObjectAppearance
- TGlyphButtonObjectAppearance
- TImageObjectAppearance
- TTextButtonObjectAppearance
- TTextObjectAppearance
Utilisation d'une sous-classe de TCommonObjectAppearance
Une apparence d'objet doit avoir un propriétaire et un nom qui identifie de façon unique l'apparence d'objet parmi les apparences d'objet de son propriétaire.
Pour changer les propriétés qui affectent l'apparence d'une apparence d'objet, effectuez vos modifications entre un appel à BeginUpdate et à EndUpdate.
TCommonObjectAppearance fournit les propriétés suivantes pour personnaliser l'apparence d'objet :
- Align et VertAlign
- Opacity
- PlaceOffset (ainsi que ActualPlaceOffset, et InternalPlaceOffset)
- Width (ainsi que ActualWidth, WidthWhenVisible, et InternalWidth) et Height (ainsi que ActualHeight, HeightWhenVisible, et InternalHeight)
- Visible
Le tableau suivant montre comment les propriétés de TCommonObjectAppearance correspondent aux propriétés de TListItemDrawable :
Propriétés de TCommonObjectAppearance | Propriétés correspondantes de TListItemDrawable |
---|---|
ActualPlaceOffset | PlaceOffset |
Align | Align |
Opacity | Opacity |
SizeWhenVisible | Size |
VertAlign | VertAlign |
Visible | Visible |
Les sous-classes peuvent définir des propriétés supplémentaires qui correspondent aux propriétés des sous-classes de TListItemDrawable et affectent leur apparence.
Vous pouvez gérer l'événement OnChange de façon à ce qu'il réagisse en cas de modification de l'une de ces propriétés, ou l'événement OnHeightChange afin qu'il réagisse en cas de modification de Height.
Vous pouvez à tout moment restaurer les valeurs par défaut des propriétés qui affectent l'apparence.
Sous-classement de TCommonObjectAppearance
Pour définir un type d'apparence d'objet personnalisé, créez une sous-classe de TCommonObjectAppearance et procédez comme suit :
- Redéfinissez AssignTo de façon à implémenter la prise en charge de la copie.
- Redéfinissez
CreateDefaultValues
de façon à renvoyer une valeur valide pour DefaultValues (une valeur créée en transmettantAIsDefaultValues
commeTrue
au constructeur). - Redéfinissez CreateObject de façon à créer une instance d'une sous-classe de TListItemDrawable et, entre un appel à TListItemDrawable.BeginUpdate et à TListItemDrawable.EndUpdate, remplissez-la avec les propriétés appropriées de votre apparence d'objet. Vous pouvez utiliser AssignTo si vous l'implémentez de façon à ce qu'elle prenne en charge la sous-classe de TListItemDrawable que CreateObject renvoie sous forme de paramètre.
- Redéfinissez ResetObject. Vous pouvez utiliser ResetObjectT pour votre implémentation.
Pour finir, il est conseillé d'ajouter autant de propriétés supplémentaires que votre apparence d'objet en requiert.
Les types d'apparence d'objet sont rarement implémentés tous seuls. Généralement, une sous-classe de TListItemDrawable est d'abord implémentée, puis c'est le type d'apparence d'objet correspondant qui est ensuite implémenté.