Utiliser les flèches dans l'objet zone de défilement

L'auteur

Site personnel

Liens sociaux

Viadeo Twitter Facebook Share on Google+   

Produit : 4D 2004.x · Plateforme : Mac & Win


Dans bons nombres d'objets 4D, il est possible d'utiliser les flèches bas et haut pour faire défiler une liste verticalement.

Cependant, cette fonctionnalité n'est pas disponible pour une zone de défilement.

Cette astuce va vous donner une des solutions possibles pour en bénéficier.


Formulaire de base


Ci-dessous une capture d'écran du formulaire que nous allons utiliser dans notre exemple.

Image non disponible


Détaillons un peu ce qui le compose :

   · Une zone de défilement nommée ZD1

   · Un bouton invisible nommé Arrow_Up

   · Un bouton invisible nommé Arrow_Down



Principe de notre astuce


Nous allons utiliser les boutons Arrow_Up et Arrow_Down pour nous déplacer dans notre zone grâce au code suivant :

code 4D
Sélectionnez
-------------------------------------------------
Bouton : Arrow_Up
-------------------------------------------------
Si (Evenement formulaire=Sur clic )
	
	Si (ZD1-1>0)
		ZD1:=ZD1-1
		REDESSINER(ZD1)
	Fin de si 
	
Fin de si
code 4D
Sélectionnez
-------------------------------------------------
Bouton : Arrow_Down
-------------------------------------------------
Si (Evenement formulaire=Sur clic )
	
	Si (ZD1+1<=Taille tableau(ZD1))
		ZD1:=ZD1+1
		REDESSINER(ZD1)
	Fin de si 
	
Fin de si

A noter de ne pas oublier d'activer dans la liste des propriétés de nos boutons :
   · L'événement formulaire Sur clic
   · Le raccourci clavier flèche haut pour Arrow_Up
   · Le raccourci clavier flèche bas pour Arrow_Down

Quand nous irons cliquer sur flèche haut, par exemple, cela déclenchera la méthode objet du bouton Arrow_Up, et nous nous déplacerons alors dans notre zone.

Maintenant il nous reste un dernier détail à régler : les raccourcis ne doivent être actifs que si nous sommes dans notre zone.

Nous allons donc désactiver simplement les boutons quand nous n'en avons pas besoin grâce au code suivant :

code 4D
Sélectionnez
-------------------------------------------------
Zone de défilement : ZD1
-------------------------------------------------
$Events:=Evenement formulaire

Au cas ou 

	: ($Events=Sur chargement )
		INACTIVER BOUTON(*;"Arrow_@")
		
	: ($Events=Sur début survol )
		ACTIVER BOUTON(*;"Arrow_@")
		
	: ($Events=Sur fin survol )
		INACTIVER BOUTON(*;"Arrow_@")
		
Fin de cas

A noter de ne pas oublier d'activer dans la liste des propriétés de notre zone :
   · L'événement formulaire Sur chargement
   · L'événement formulaire Sur début survol
   · L'événement formulaire Sur fin survol

Vous avez aimé ce tutoriel ? Alors partagez-le en cliquant sur les boutons suivants : Viadeo Twitter Facebook Share on Google+   

  

Copyright © 2007 4D s.a. Aucune reproduction, même partielle, ne peut être faite de ce site ni de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.