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 [Le DockSite : le Control qui reçois le Control dockable] |
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 19: | Ligne 19: | ||
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 | ||
+ | |||