![]() |
![]() |
![]() |
Stéphane
Sibué |
|
Référence
Librairie CodePPC
|
Retour à l'index des références
Espace de Nom CodePPC.Controls
Control SignControl
A quoi sert le contrôle SignControl ?
SignControl est un contrôle visuel qui prend en charge la saisie et la restitution de signatures, fonction très souvent nécessaire dans un développement sous Windows Mobile.
Philosophie de ce contrôle
![]() SignControl sur Pocket PC |
La philosophie de SignControl est d'être le plus simple possible à mettre en oeuvre. Pour ce faire, SignControl se présente sous la forme d'une zone de saisie au stylet (ou à la souris) qui mémorise tous les mouvements de l'utilisateur. Il mémorise en temps réel tous les vecteurs définissant une signature. Les informations concernant la signature (la somme des vecteurs) peut être extrait du contrôle sous la forme d'une chaîne de caractères. Cette chaîne, qu'il est alors très simple d'enregistrer dans un champs texte d'une base de données, est très simple à manipuler. Une version pour PC (disponible gratuitement sur le site de notre partenaire Antéïs à cette adresse) fonctionne exactement de la même manière ce qui permet par exemple de saisir une signature sur Pocket PC, de la transférer coté PC (par synchro, base de données, Socket, etc...) pour ensuite la restituer à l'identique coté PC etl'imprimer par exemple. L'espace de nom du contrôle PC est Anteis.Controls.SignControl.
|
Utilisation
J'ai créé un programme d'exemple qui met en oeuvre le contrôle SignControl ce qui vous permettra de bien comprendre son fonctionnement. Cet exemple est téléchargeable ici, il est écrit en VB.NET mais sa conversion en C# ne devrait poser absolument aucun problème.
Déclaration de la variable représentant le contrôle dans
la fenêtre

Création du contrôle
Dans la méthode New() de la fenêtre ajouter la création du contrôle. Cette partie de code créé le contrôle, le positionne, l'ajoute à la fenêtre et initialise sa propriété Text :

Exemple 1 : Enregistrement de la signature dans une variable buffer
Note : Dans cet exemple, BufferSignature est une variable de type String.
If Signature.IsEmpty Then
MsgBox("Contrôle signature vide, rien à copier !")
Else
BufferSignature = Signature.SaveToString
End If
|
Exemple 2: Enregistrement de la signature dans un fichier
Try |
Exemple 3: Lecture de la signature depuis une variable de type String
If BufferSignature = "" Then |
Exemple 4: Lecture de la signature depuis un fichier
Try |
Les méthodes et propriétés propres à ce contrôle
SignControl possède toutes les méthodes et propriétés d'un contrôle classique afin de le positionner, lui donner une taille, le rendre visible ou non, et possède aussi une série de méthodes et propriétés qui lui sont propres et dont voici le détail :
| Public Sub Clear() |
|
Cette méthode efface le contrôle et sa mémoire interne. Si une signature était déjà mémorisée elle est oubliée. |
| Public Sub Draw(ByVal g As System.Drawing.Graphics) | |
|
Cette méthode dessine la signature dans un contexte graphique passé en paramètre. Ceci permet de dessiner dans un bitmap par exemple. Exemple : On dessine la signature contenue dans le contrôle "Signature" dans un nouveau bitmap
|
| Public Sub LoadFromFile(ByVal path As String, Optional ByVal wDraw As Boolean = True) | |
|
Cette méthode charge dans la mémoire du contrôle
une signature depuis un fichier. Il est possible d'empêcher le dessin
de la signature après le chargement en plaçant le paramètre
"wDraw" à False. Exemple : Chargement d'une signature depuis le fichier "\My Documents\Signature.dat"
|
| Public Sub LoadFromString(ByVal wString As String, Optional ByVal wDraw As Boolean = True) | |
|
Cette méthode charge dans la mémoire du contrôle une signature depuis une variable de type String. Il est possible d'empêcher le dessin de la signature après le chargement en plaçant le paramètre "wDraw" à False. Si la chaîne ne contient pas une signature valide, une erreur est remontée. Exemple : Chargement d'une signature depuis la variable wBuffer de type String
|
| Public Sub SaveToFile(ByVal path As String) | |
|
Cette méthode enregistre une signature dans le fichier dont le chemin est donné en paramètre. Exemple : Enregistrement de la signature dans le fichier "\My Documents\Signature.dat"
|
| Public Function SaveToString() As String | |
|
Cette fonction retourne une chaîne contenant la signature mémorisée. Exemple : Stockage dans la variable "wBuffer" de type String de la signature
|
| Public Property Animate() As Boolean |
|
Cette propriété détermine la manière de dessiner
la signature. Si elle est vraie (True) la signature est rendue par un
tracé proche de celui d'une personne, comme si l'ordinateur signait
lui même. Le rendu est plutôt sympa. Par défaut cette propriété est fausse (False). |
| Public Property Border() As System.Windows.Forms.BorderStyle |
|
Cette propriété permet de tracer ou non un bord noir autour du contrôle. |
| Public Property Font() As System.Drawing.Font |
| Cette propriété permet de choisir la fonte qui sera utilisée pour afficher le texte de la signature (contenu de la propriété Text). Ce texte permet par exemple d'écrire dans le contrôle la mention "Veuillez signer dans ce cadre". |
| Public ReadOnly Property IsEmpty() As Boolean |
|
Cette propriété retourne faux (False) si une signature se trouve dans la mémoire et vrai (True) si la mémoire du contrôle est vide. Ceci permet de savoir si la signature a bien été saisie ou non. |
| Public Property Text() As String |
|
Cette propriété permet de définir le texte qui est affiché dans le cadre du contrôle pour inviter, par exemple, l'utilisateur à signer dans le cadre. |
| Public Property ForeColor() As System.Drawing.Color | |
|
Cette propriété permet de choisir la couleur de la signature. Par défaut la signature est noire. Exemple : Choix de la couleur rouge comme couleur de rendu de la signature
|
En cas de problème, utilisez le forum consacré à la librairie CodePPC pour poser vos questions et faire vos remarques.
|
|