Faire défiler automatiquement la vue d'une zone à ascenseur vertical

 

Une question qui s'était posée sur un forum francophone d'entraide entre développeurs Delphi m'a également été posée sur Twitch : comment faire défiler automatiquement un ascenseur vertical.

Outre la pertinence de cette envie qui ne me semble pas être judicieuse pour tout un tas de raisons, nous avons fait quelques tests.

Grosso modo, une zone avec ascenseur c'est une vue partielle d'une zone plus grande (généralement virtuelle). Le TScrollBox, TVertScrollBox, THorizScrollBox ont des coordonnées et une taille comme tout composant visuel dans Delphi (et ailleurs). Ils ont aussi des coordonnées dans la vue de ce qu'ils affichent. Appelées généralement "offset" dans le "viewport", ces coordonnées sont relatives à la partie affichée du contenu.

Dans Delphi, selon le composant et le framework utilisé (VCL ou FMX) il y a plusieurs solutions différentes pour déplacer le contenu par programmation.

Nous avons fait un test sur un projet FireMonkey en tatonnant vu que je n'avais pas la réponse exacte en tête. C'est un peu l'inconvénient des sessions de codage en direct et des digressions mais c'est aussi ce qui fait leur intérêt (discussion libre et interactivité sans préparation particulière).

Au final j'ai aussi montré comment faire défiler des composants sans passer par un TVertScrollBox comme vous pouvez le voir avec les exemples joints.

Certaines informations n'ont pas été affichées. Vous devez vous connecter pour y accéder.

Connexion Inscription


Fichiers associés

Certaines informations n'ont pas été affichées. Vous devez vous connecter pour y accéder.

Connexion Inscription


Mug Toucan DX dans la baie de RioMug Toucan DX dans la baie de Rio