ATOUTFOX
COMMUNAUTÉ FRANCOPHONE DES PROFESSIONNELS FOXPRO
Visual FoxPro : le développement durable

Un spliter natif FOXPRO   



L'auteur

delphi-ne
France France
Membre Simple
# 0000000233
enregistré le 30/03/2005

Fiche personnelle


Note des membres
pas de note

Contributions > 02 - SCX : Formulaires

Un spliter natif FOXPRO
# 0000000184
ajouté le 02/05/2005 14:33:29 et modifié le 02/05/2005
consulté 4327 fois
Niveau initié

Version(s) Foxpro :
VFP 6.0


Télécharger le ZIP (16.47 Ko)
Description
La gestion d'un splitter consiste à pourvoir redimensionner deux parties de l'écran en utilisant la fonction Glisser de la souris.
C'est natif sous Delphi. Ce n'est pas le cas sous FOXPRO.
Certains sites font état d'exemples basés sur des DLL ou des API. Le problème est la reticence de certains chefs de projet à voir utiliser des DLL.
L'exemple que je donne ici est basé sur une bibliothèque de classes donc du code 100% FOX et que l'on peut même rapatrier au niveau d'un écran.

L'objet dérive du container et contient lui-même 3 containers
Celui de gauche dans lequel on peut placer des objets de saisie ou d'affichage.
Celui du milieu qui fait office de splitter. La forme de la souris change quand on est dessus.
Celui de droite dans lequel on peut placer aussi des objets de saisie ou d'affichage.

Le Container du milieu détecte le clic enfoncé de la souris et positionne une propriété de la classe à True.
Ensuite, pendant le temps ou la souris est déplacée, si la propriété de classe est à True le container de splitter est déplacé, celui de gauche et celui de droite sont repositionnés et redimensionnés.
la propriété de classe est remise à False quand la souris est relachée

La même méthode est utilisée dans l'évènement resize.

La form jointe sert d'exemple de la mise en oeuvre de l'objet de classe.

Ce n'est ni compliqué ni révolutionnaire. Simplement un moyen facile d'améliorer l'interface graphique d'une application.
Commentaires
Aucun commentaire enregistré ...

Publicité

Les pubs en cours :

www.atoutfox.org - Site de la Communauté Francophone des Professionnels FoxPro - v3.4.0 - © 2004-2019.
Cette page est générée par un composant COM+ développé en Visual FoxPro 9.0-SP2-HF3