Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
prog:lazarus:cas:docking [18/08/2024 16:34] thierry [Personnalisation du Docking par Surcharge] |
prog:lazarus:cas:docking [18/08/2024 16:38] (Version actuelle) thierry [GetFloatingDockSiteClass] |
||
---|---|---|---|
Ligne 6: | Ligne 6: | ||
MyControl.DragMode := dmAutomatic; | MyControl.DragMode := dmAutomatic; | ||
</code> | </code> | ||
- | ==== GetFloatingDockSiteClass ==== | + | ==== La Fonction "GetFloatingDockSiteClass" ==== |
Renvoie la classe pour un site d'amarrage flottant. | Renvoie la classe pour un site d'amarrage flottant. | ||
Ligne 18: | Ligne 18: | ||
=== Personnalisation du Docking par Surcharge=== | === Personnalisation du Docking par Surcharge=== | ||
Si vous souhaitez personnaliser l'interface de docking dans votre application, vous pouvez surcharger ''TControl.GetFloatingDockSiteClass'' pour qu'elle retourne une classe spécifique de TCustomForm. Par exemple, vous pourriez vouloir utiliser une classe dérivée de TForm avec des fonctionnalités supplémentaires pour le docking. | Si vous souhaitez personnaliser l'interface de docking dans votre application, vous pouvez surcharger ''TControl.GetFloatingDockSiteClass'' pour qu'elle retourne une classe spécifique de TCustomForm. Par exemple, vous pourriez vouloir utiliser une classe dérivée de TForm avec des fonctionnalités supplémentaires pour le docking. | ||
- | ==== Le DockSite : le Control qui reçois le Control dockable ==== | + | ===== Le DockSite : le Control qui reçois le Control dockable ===== |
+ | ==== la fonction "GetSiteInfo" ==== | ||
+ | <code delphi> | ||
+ | TWinControl.GetSiteInfo( Client: TControl; var InfluenceRect: TRect; MousePos: TPoint; var CanDock: Boolean); virtual; | ||
+ | </code> | ||
+ | La méthode TWinControl.GetSiteInfo renvoie un rectangle d'influence (de capture) associé au site d'amarrage. Cette convention permet, par exemple, de masquer les sites d'amarrage vides dans l'interface graphique sans les rendre inaccessibles pour le dépôt. L'implémentation par défaut renvoie l'étendue du contrôle visible, augmentée d'un certain montant dans chaque direction | ||