UREGENT: TEdit pour numéro de telephone

Résolu
cedflow Messages postés 28 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 8 novembre 2004 - 27 oct. 2004 à 16:12
cedflow Messages postés 28 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 8 novembre 2004 - 28 oct. 2004 à 10:30
bonjour, en fait j'aimerais formater automatiquement un Edit pour que la personne rentre un numéro de téléphone et que tous les deux numéros il y est un espace

comme ca: 01 02 00 00 00

pour le moment g fais ca:

If key In ['0'..'9',#8] Then exit else key:=#18

pour qu'il n'y ai que des chiffres de rentrés et g limité à 10 caractères de TEdit, mais je ne vois pas quoi faire pour les espace, car si la personne efface par exemple on risque de ne plus savoir ou on en ai au nivo des espaces à ajouter.

merci d'avance

8 réponses

jinh68 Messages postés 215 Date d'inscription mardi 29 juillet 2003 Statut Membre Dernière intervention 1 septembre 2006
28 oct. 2004 à 09:41
Salut,

MaskEdit1.EditMask :='##' + ' ' + '##' + ' ' + '##' + ' ' + '##' + ' ' + '##' + #0; //le #0 pour indiquer la fin de chaine, ca permet de limiter tes numéros à 10 chiffres

Tout ca en gardant dans le OnKeyPress:

If Not key in ['0'..'9'] then Key := #0;

et le tour est joué ;)

j!nH
3
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
28 oct. 2004 à 10:16
hello,

pas besoin de passer par
"MaskEdit1.EditMask :='##' + ' ' + '##' + ' ' + '##' + ' ' + '##' + ' ' + '##' + #0;"
il suffit de configurer le maskedit au designtime.
par contre si tu mets des #, on peut faire des espaces supplémentaires, alors que avec des 0 on ne peut pas.
Voila mon input mask : 00 00 00 00 00;0;_
puis pour le pb de retour mets ça :
if not (Key in ['0'..'9', Chr(VK_BACK), Chr(VK_DELETE)]) then
Key := #0;
tu pourras delete et supprimer

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! ;)

-------------------------------------------
3
jinh68 Messages postés 215 Date d'inscription mardi 29 juillet 2003 Statut Membre Dernière intervention 1 septembre 2006
27 oct. 2004 à 17:15
Salut,

Tu vas trouver ma réponse tres bizarre, je ne suis pas chez moi la mais je te filerai un prototype de fonction ce soir.A moins que tu n'ai trouvé la solution entre temps....
j!nH
0
JulioDelphi Messages postés 2226 Date d'inscription dimanche 5 octobre 2003 Statut Membre Dernière intervention 18 novembre 2010 14
27 oct. 2004 à 17:35
Salut,
il te suffit d'utiliser un TMaskEdit ! c'est un composant installé avec ton delphi. tu pourras formater l'entree dans le edit.
le 01 23 45 67 89 sera tres simple à configurer :)
n'ayant pas delphi sous les yeux, je ne peux pas t'aider plus ! les details me manquent mais tu devrais t'en sortir :p
bonne prog a+

N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient ! ;)

-------------------------------------------
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cedflow Messages postés 28 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 8 novembre 2004
28 oct. 2004 à 09:40
le problème et que ce qu'il y a dans le TEdit est envoyé dans un document excel, et dans le fichier Excel les espace qui se trouvent tous les deux numéro devront aussi être présent, si je passes par le mask je penses qu'ils n'y seront pas
0
jinh68 Messages postés 215 Date d'inscription mardi 29 juillet 2003 Statut Membre Dernière intervention 1 septembre 2006
28 oct. 2004 à 09:50
Excel dispose d'un format numéro de téléphone pour ces cellules, donc mm s'il te prend pas les espaces pour le transfert, Excel te le reformatera comme un grand ;) !

j!nH
0
cedflow Messages postés 28 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 8 novembre 2004
28 oct. 2004 à 10:03
MErci sa marche nikel, par contre petite remarque au passage si l'on met :

If Not (key in ['0'..'9']) then Key := #0;

dans le OnKeyPress il y a un problème, on ne peut plus utiliser la touche retour (suppression) donc on ne peut supprimer qu'avec la touche suppr
0
cedflow Messages postés 28 Date d'inscription lundi 19 juillet 2004 Statut Membre Dernière intervention 8 novembre 2004
28 oct. 2004 à 10:30
j'avais déjà fais la modif pour le mask, par contre merci pour l'info pour les touches retour et suppr

merci à tous, maintenant mon problème est entièrement réglé.
0
Rejoignez-nous