Le premier site francophone dédié au développement Pocket PC


 
   

Comment ajouter un contrôle DatePicker à une feuille eVB ?

Il existe dans Windows CE un contrôle qui permet de saisir très facilement une date. Ce contrôle est le DatePicker, il se présente sous la forme d'une liste combo qui affiche une date. Si vous dépliez la liste, un calendrier permet une saisie rapide et intuitive. Ce contrôle est utilisé dans l'agenda


Le contrôle DatePicker déplié

eVB ne possède pas ce contrôle en standard, mais il est possible de créer avec eVC++ une DLL qui permet à eVB d'ajouter un (ou plusieurs) contrôles DatePicker à une (ou plusieurs) feuilles.

Cette DLL s'appelle VBDatePicker.dll et doit être placée dans le dossier Windows de votre Pocket PC. Attention, nous vous fournissons la version ARM de cette DLL, il vous suffit de créer cette DLL avec le bon processeur avec eVC++ si vous souhaitez l'utiliser avec un autre Pocket PC que l'iPAQ (en cas de problème dans cette démarche, envoyez-nous un mail ou encore, postez un message sur le forum 'A l'aide').

Notre DLL publie 4 fonctions permettent de contrôler les DatePicker que vous allez ajouter à vos feuilles eVB.

VBDatePicker_Create

Cette fonction permet d'ajouter un DatePicker à une feuille eVB.
Les paramètres sont les suivants:

hParent le .hWnd de la fenêtre eVB à qui vous ajoutez le contrôle
hInstance App.hInstance
wLeft Left du contrôle (en pixels)
wTop Top du contrôle (en pixels)
wWidth Width du contrôle (en pixels)
wHeight Height du contrôle (en pixels)

Cette fonction retourne le handle du DatePicker créé, qui permet d'y accéder par les autres fonctions.

Cette fonction est déclarée dans eVB de la manière suivante :

Declare Function VBDatePicker_Create Lib "VBDatePicker.dll" (ByVal hParent As Long, ByVal hInstance As Long, ByVal wLeft As Long, ByVal wTop As Long, ByVal wWidth As Long, ByVal wHeight As Long) As Long

VBDatePicker_GetValue

Cette fonction retourne la date en cours du DatePicker concerné (le paramètre hWnd), dans 3 variables de type long, wYear, wMonth et wDay (voir exemple du programme eVB fourni).

Cette fonction est déclarée dans eVB de la manière suivante :

Declare Function VBDatePicker_GetValue Lib "VBDatePicker.dll" (ByVal hWnd As Long, ByRef wYear As Integer, ByRef wMonth As Integer, ByRef wDay As Integer) As Boolean

VBDatePicker_SetValue

Cette fonction permet de placer la date en cours du DatePicker. Pour celà, il faut fournir à cette fonction la nouvelle date dans 3 paramètres de type long, wYear, wMonth et wDay (voir exemple du programme eVB fourni).

Cette fonction est déclarée dans eVB de la manière suivante :

Declare Function VBDatePicker_SetValue Lib "VBDatePicker.dll" (ByVal hWnd As Long, ByVal wYear As Integer, ByVal wMonth As Integer, ByVal wDay As Integer) As Boolean

VBDatePicker_SetFormat

Cette fonction permet de régler le format qui sera utilisé par le DatePicker pour afficher la date dans son combo. Cette date peut être affichée de manière complète, comme de manière courte. La liste des codes possibles sont disponibles dans l'aide de eVC concernant le contrôle DatePicker. Sachez que "ddd dd/MM/yyy" indique au DatePicker d'afficher par exemple 'Vendredi 22 juin 2001' sous la forme 'Ven. 22/06/2001'.

Cette fonction est déclarée dans eVB de la manière suivante :

Declare Function VBDatePicker_SetFormat Lib "VBDatePicker.dll" (ByVal hWnd As Long, ByVal wFormat As String) As Boolean

VBDatePicker_SetVisible

Comme son nom l'indique, cette fonction permet de rendre le DatePicker dont le hWnd est passé en paramètre visible ou invisible (valeur logique du 2ème paramètre).

Cette fonction est déclarée dans eVB de la manière suivante :

Declare Sub VBDatePicker_SetVisible Lib "VBDatePicker.dll" (ByVal hWnd As Long, ByVal wVisible As Boolean)

Le programme eVB de test fourni avec cette DLL permet de tester ce contrôle.

Nous avons mis à votre disposition, en libre téléchargement, plusieurs éléments :

Sources eVC++ de la DLL

Sources eVB du programme permettant de tester cette DLL

VBDatePicker.dll (version ARM), à placer dans le dossier Windows.
VBDatePicker.dll (version MIPS), à placer dans le dossier Windows.

 

Voilà, avec cette petite DLL, vous êtes maintenant capable d'utiliser un moyen très pratique pour saisir des dates dans vos programmes eVB et ainsi les rendre beaucoup plus professionnels.

 

Stéphane Sibué

 

 
       
   
 
   
Copyright 2001-2004 - Tous droits réservés
 
   

iPAQ est un produit de COMPAQ.
Visual Tools est un produit de Microsoft Corporation.
Toutes les autres marques et produits présents dans ces pages sont la propriété exclusive de leurs sociétés respectives.