PC SOFT

GRUPOS DE DISCUSSÃO PROFISSIONAL
WINDEVWEBDEV e WINDEV Mobile

Inicio → WINDEV 2024 → Amusez-vous... Pb : Masque de Saisie d'adresse Mac
Amusez-vous... Pb : Masque de Saisie d'adresse Mac
Iniciado por scatheli, jun., 28 2005 7:14 PM - 8 respostas
Publicado em junho, 28 2005 - 7:14 PM
Bonjour,

Je soushaite appliquer un masque de saisie pour une adresse mac.

Par définition, l'adresse mac d'une carte réseau est constituée de 12 caracteres : (Numerique et Alpha jusqu'a F)

exemple : 00FE.784A.2C4B

Les caracteres autorisés sont : de 0 à 9 et de A à F

Si quelqu'un à la soluce ...

Merci encore
Publicado em junho, 28 2005 - 7:47 PM
Bonjour,

tu prends un champs de saisie de 12 caracteres,
et à chaque modification du champs, tu lances une procedure, qui regarde
si ce que tu saisies est correcte. puis tu repositionnes l'utilisateur à la
fin du champs.

ceci va te permettre d'ajouter les "." automatiquement quand ton champs aura
la taille de 4 et de 9

je me rappel qu'un certain Michel .F avait fait cela, mais il y a bien
longtemps.....


J'espère que cela réponds à ta demande ?

Cordialement

Antoine



"Alexis" <scatheli@free.fr> a écrit dans le message de news:
42c15ed2$1@news.pcsoft.fr...


Bonjour,

Je soushaite appliquer un masque de saisie pour une adresse mac.

Par définition, l'adresse mac d'une carte réseau est constituée de 12
caracteres : (Numerique et Alpha jusqu'a F)

exemple : 00FE.784A.2C4B

Les caracteres autorisés sont : de 0 à 9 et de A à F

Si quelqu'un à la soluce ...

Merci encore


Publicado em junho, 28 2005 - 7:53 PM
Oups, je voulais dire 14 caractères, puisqu'il y a les 2 'points' .


"Antoine GIDROL" <agidrol@free.fr> a écrit dans le message de news:
42c1659a$1@news.pcsoft.fr...


Bonjour,

tu prends un champs de saisie de 12 caracteres,
et à chaque modification du champs, tu lances une procedure, qui regarde
si ce que tu saisies est correcte. puis tu repositionnes l'utilisateur à
la
fin du champs.

ceci va te permettre d'ajouter les "." automatiquement quand ton champs
aura
la taille de 4 et de 9

je me rappel qu'un certain Michel .F avait fait cela, mais il y a bien
longtemps.....


J'espère que cela réponds à ta demande ?

Cordialement

Antoine



"Alexis" <scatheli@free.fr> a écrit dans le message de news:
42c15ed2$1@news.pcsoft.fr...


Bonjour,

Je soushaite appliquer un masque de saisie pour une adresse mac.

Par définition, l'adresse mac d'une carte réseau est constituée de 12
caracteres : (Numerique et Alpha jusqu'a F)

exemple : 00FE.784A.2C4B

Les caracteres autorisés sont : de 0 à 9 et de A à F

Si quelqu'un à la soluce ...

Merci encore




Publicado em junho, 28 2005 - 7:56 PM
Pour ce qui est du 'probleme' de se repositionner sur la fin du champ de
saisie, ainsi que la possibilité de
lancer une procédure à chaque ajout d'un caractère, un bon exemple de pcsoft
est la saisie assisté,
ou vous tapez le début d'un nom , de société , par exemple, et lui il vous
complete tout seul avec ce qu'il trouve dans la base.
je ne sais plus le nom de cet exemple, mais j'ai deja vu ce truc fait par
PCSOFT.

cordialement

Antoine

"Antoine GIDROL" <agidrol@free.fr> a écrit dans le message de news:
42c1659a$1@news.pcsoft.fr...


Bonjour,

tu prends un champs de saisie de 12 caracteres,
et à chaque modification du champs, tu lances une procedure, qui regarde
si ce que tu saisies est correcte. puis tu repositionnes l'utilisateur à
la
fin du champs.

ceci va te permettre d'ajouter les "." automatiquement quand ton champs
aura
la taille de 4 et de 9

je me rappel qu'un certain Michel .F avait fait cela, mais il y a bien
longtemps.....


J'espère que cela réponds à ta demande ?

Cordialement

Antoine



"Alexis" <scatheli@free.fr> a écrit dans le message de news:
42c15ed2$1@news.pcsoft.fr...


Bonjour,

Je soushaite appliquer un masque de saisie pour une adresse mac.

Par définition, l'adresse mac d'une carte réseau est constituée de 12
caracteres : (Numerique et Alpha jusqu'a F)

exemple : 00FE.784A.2C4B

Les caracteres autorisés sont : de 0 à 9 et de A à F

Si quelqu'un à la soluce ...

Merci encore




Publicado em junho, 28 2005 - 8:46 PM
Avec la fonction
resultat = Val(<Chaîne source> [, <Base utilisée>])

puis tu reconvertit avec numérqueVerchaine(resultat,"xx") et tu compare le resultat avec la donnée entrée.

A faire pour chaque partie de la mac adresse.


A+

JFG
Publicado em junho, 29 2005 - 11:57 AM
Alexis a écrit :
Bonjour,

Je soushaite appliquer un masque de saisie pour une adresse mac.

Par définition, l'adresse mac d'une carte réseau est constituée de 12 caracteres : (Numerique et Alpha jusqu'a F)

exemple : 00FE.784A.2C4B

Les caracteres autorisés sont : de 0 à 9 et de A à F

Si quelqu'un à la soluce ...

Merci encore





Dans l'aide windev9 je vois que ca supporte les expressions réguliere dans les masques de saisie
(mk:@MSITStore:C:\Program%20Files\windev\Aide\Proprietes.chm::/Propriétés/MasqueSaisie.htm)

MonExpression est une chaîne = "([0-9A-F]{4}\.){2}[0-9A-F]{4}" // expression réguliere
Saisie1..MasqueSaisie = "regexp:"+ MonExpression

Je n'ai pas testé.

Damien
Publicado em junho, 29 2005 - 12:10 PM
Bonjour

Dans l'aide windev9 je vois que ca supporte les expressions réguliere dans
les masques de saisie
(mk:@MSITStore:C:\Program%20Files\windev\Aide\Proprietes.chm::/Propriétés/MasqueSaisie.htm)

MonExpression est une chaîne = "([0-9A-F]{4}\.){2}[0-9A-F]{4}" //
expression réguliere
Saisie1..MasqueSaisie = "regexp:"+ MonExpression

Je n'ai pas testé.


J'ai testé "regexp:"[0-9A-F]{4,4}.[A-F0-9]{4,4}.[0-9A-F]{4,4} directement
dans le masque de saisie de l'éditeur. Ca ne marche pas, alors que l'aide
dit qu'on peut le faire ???

par contre, ça, en sortie du champ, fonctionne très bien

SI VérifieExpressionRégulière(MonChamp,
"[0-9A-F]{4,4}.[A-F0-9]{4,4}.[0-9A-F]{4,4}") ALORS
Info("OK")
SINON
Info("bad")
FIN
Publicado em junho, 29 2005 - 12:27 PM
VérifieExpressionRégulière(<Chaîne de caractères à vérifier>, <Format>)

A tester en sortie de zone ou a chaque modification si tu veux pouvoir dire
au moment ou ca ne marche pas.

Pour te positionner dans ton champ, regarde la propriété ..curseur sur un
champ de saisie.

Florent

"Alexis" <scatheli@free.fr> a écrit dans le message de news:
42c15ed2$1@news.pcsoft.fr...


Bonjour,

Je soushaite appliquer un masque de saisie pour une adresse mac.

Par définition, l'adresse mac d'une carte réseau est constituée de 12

caracteres : (Numerique et Alpha jusqu'a F)

exemple : 00FE.784A.2C4B

Les caracteres autorisés sont : de 0 à 9 et de A à F

Si quelqu'un à la soluce ...

Merci encore


Publicado em junho, 29 2005 - 1:01 PM
Jean-Louis MOREL a écrit :
Bonjour


Dans l'aide windev9 je vois que ca supporte les expressions réguliere dans
les masques de saisie
(mk:@MSITStore:C:\Program%20Files\windev\Aide\Proprietes.chm::/Propriétés/MasqueSaisie.htm)

MonExpression est une chaîne = "([0-9A-F]{4}\.){2}[0-9A-F]{4}" //
expression réguliere
Saisie1..MasqueSaisie = "regexp:"+ MonExpression

Je n'ai pas testé.


J'ai testé "regexp:"[0-9A-F]{4,4}.[A-F0-9]{4,4}.[0-9A-F]{4,4} directement
dans le masque de saisie de l'éditeur. Ca ne marche pas, alors que l'aide
dit qu'on peut le faire ???

par contre, ça, en sortie du champ, fonctionne très bien

SI VérifieExpressionRégulière(MonChamp,
"[0-9A-F]{4,4}.[A-F0-9]{4,4}.[0-9A-F]{4,4}") ALORS
Info("OK")
SINON
Info("bad")
FIN




Oui j'ai testé (sans les " ) mais j'ai pas l'impression que ca ne fonctionne tres bien sur les masque directement :/
l'exemple donné par la donc fonctionne (et encore je n'ai pas réussit a effacer ...)

regexp:[0-9A-F] fonctionne, on peut mettre un des elements donné et rien d'autre ne s'affichera, mais par contre, on ne
peut pas l'effacer pour corriger ...
regexp:[0-9A-F]* fonction on peut marquer autant d'element précisé que l'on veux
regexp:[0-9A-F]+ fonction on peut marquer autant d'element précisé que l'on veux mais on ne peut pas tout effacer (il
reste toujours un element (pour la correction ca peut etre genant)
regexp:[0-9A-F]{4} ne fonctionne pas
regexp:[0-9A-F]{4,4} ne fonctionne pas
regexp:[0-9A-F][0-9A-F][0-9A-F][0-9A-F] ne fonctionne pas ...

bref il y a encore du boulot chez pcsoft ...

(est ce qu'on peut ouvrir un bug ?)

Donc oui le mieux c'est le test en sortie ...

Damien