Developpez.com

Plus de 14 000 cours et tutoriels en informatique professionnelle à consulter, à télécharger ou à visionner en vidéo.

Developpez.com - 4D
X

Choisissez d'abord la catégorieensuite la rubrique :


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

Date de publication : 25/04/2007

Par Olivier Marolleau (Technicien Support Technique)
 



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.


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

-------------------------------------------------
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

-------------------------------------------------
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
info 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

-------------------------------------------------
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
info 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


Valid XHTML 1.1!Valid CSS!

Copyright © 2007 4D s.a. Aucune reproduction, même partielle, ne peut être faite de ce site et 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.

Contacter le responsable de la rubrique 4D