Interdire deux virgules [Résolu]

Maniaxman 159 Messages postés lundi 10 janvier 2005Date d'inscription 17 juillet 2008 Dernière intervention - 27 mai 2005 à 22:02 - Dernière réponse : Maniaxman 159 Messages postés lundi 10 janvier 2005Date d'inscription 17 juillet 2008 Dernière intervention
- 29 mai 2005 à 13:40
Bonjour,



j'ai un edit sur ma fiche, et j'aimerais bien qu'on ne puisse pas entrer deux virgules dedans, comment puis-je faire?



Merci
Afficher la suite 

Votre réponse

12 réponses

Meilleure réponse
ni69 1529 Messages postés samedi 12 juin 2004Date d'inscription 5 juillet 2010 Dernière intervention - 27 mai 2005 à 22:26
3
Merci
Tu peux faire comme ceci (rajoute le code dans l'événement OnKeyPress de ton TEdit ) :

procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

if Key = ',' then if Pos( ',' , Edit1.Text ) <> 0 then Key := #9;
// Si une virgule se trouve déjà dans le texte de l'Edit, un bip se
produit (#9)

end;



@+
Bonne Prog'
Nico

<hr>

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




www.ni69.new.fr</italique>

Merci ni69 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de ni69
Meilleure réponse
JulioDelphi 2354 Messages postés dimanche 5 octobre 2003Date d'inscription 18 novembre 2010 Dernière intervention - 28 mai 2005 à 10:38
3
Merci
Solution acceptable, mais je pouuse le bouchon et je colle "1554,1154,1" j'ai donc 2 , et aucun bip =)



je propose ça :



procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);

begin

if Key = ',' then if Pos( ',' , Edit1.Text ) <> 0 then Key := #9;

end;



procedure TForm1.Edit1Exit(Sender: TObject);

var temp: string;

begin

temp := edit1.text;

if pos(',', temp)>0 then

begin

delete(temp,0, pos(',',temp));

if pos(',', temp)>0 then

begin

beep;

Showmessage('Attention il y a 2 , !');

edit1.SetFocus;

edit1.SelectAll;

end;

end;

end;



ça vérifié en plus lors du OnExit que 2 , ne sont pas présentes.

Merci JulioDelphi 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 88 internautes ce mois-ci

Commenter la réponse de JulioDelphi
cs_sim51 314 Messages postés dimanche 31 octobre 2004Date d'inscription 31 décembre 2006 Dernière intervention - 27 mai 2005 à 23:13
0
Merci
Salut,
Simplement pour mes connaissances ni69, la fonction pos donne la position du caractère dans la chaine. C'est ça ?? et elle renvoie 0 sinon ?

Ps : en taille 1 c'est udr à lire :p


N'oubliez pas de cliquer sur réponse acceptée si la réponse vous convient !!!
Commenter la réponse de cs_sim51
ni69 1529 Messages postés samedi 12 juin 2004Date d'inscription 5 juillet 2010 Dernière intervention - 27 mai 2005 à 23:18
0
Merci
Comme tu le dis, la fonction Pos(SousChaîne, Chaîne) renvoie la
position de la SousChaîne dans la Chaîne et 0 si elle n'est pas
présente.

Désolé
pour
la taille

des
caractères
!




@+
Bonne Prog'
Nico

<hr>

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




www.ni69.new.f</italique>
Commenter la réponse de ni69
cs_sim51 314 Messages postés dimanche 31 octobre 2004Date d'inscription 31 décembre 2006 Dernière intervention - 28 mai 2005 à 00:02
0
Merci
mdrrrrrrrrrrrr c'est pas grave pour la taille, vive le ctrl + molette arrière :p



N'oubliez pas de cliquer sur réponse acceptée si la réponse vous convient !!!
Commenter la réponse de cs_sim51
cs_Delphiprog 4580 Messages postés samedi 19 janvier 2002Date d'inscription 9 janvier 2013 Dernière intervention - 28 mai 2005 à 08:46
0
Merci
"vive le ctrl + molette arrière " : je viens d'apprendre quelque chose aujourd'hui. Merci sim51

<
Commenter la réponse de cs_Delphiprog
ni69 1529 Messages postés samedi 12 juin 2004Date d'inscription 5 juillet 2010 Dernière intervention - 28 mai 2005 à 11:40
0
Merci
Bien vu JulioDelphi !

J'avoue que n'y avais pas pensé !



@+
Bonne Prog'
Nico

<hr>

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




www.ni69.new.fr</italique>
Commenter la réponse de ni69
Maniaxman 159 Messages postés lundi 10 janvier 2005Date d'inscription 17 juillet 2008 Dernière intervention - 28 mai 2005 à 12:55
0
Merci
pas mal, j'avoue que je n'avais pas pensé non plus qu'on pouvait coller


n'y a t-il pas un moyen plus simple qui permettrait d'interdir de coller dans un label ?
Commenter la réponse de Maniaxman
JulioDelphi 2354 Messages postés dimanche 5 octobre 2003Date d'inscription 18 novembre 2010 Dernière intervention - 28 mai 2005 à 13:17
0
Merci
C'est le moyen simple celui là, après tu peux changer le composant edit
afin qui ne reçoive plus le message windows du collage, tu peux aussi
bidouiller (plus compliqué que ce que j'ai fait) qu'il vérifié quand
une touche est appuyée que ce n'est pas un "ctrl" enfoncé avec un "v"
ou un "V" puis ajouter un menu en clic droit pour supprimer l'original,
enfin bref, beaucoup plus compliqué et bidouillé que mes quelques
lignes =)
Commenter la réponse de JulioDelphi
Maniaxman 159 Messages postés lundi 10 janvier 2005Date d'inscription 17 juillet 2008 Dernière intervention - 28 mai 2005 à 13:41
0
Merci
et comment faire pour ne pas faire afficher le message du collage?
Commenter la réponse de Maniaxman
JulioDelphi 2354 Messages postés dimanche 5 octobre 2003Date d'inscription 18 novembre 2010 Dernière intervention - 28 mai 2005 à 20:13
0
Merci
Hum ... Une petite lecture du code pour voir mon simple

Showmessage('Attention il y a 2 , !');

A toi de le supprimer.
Commenter la réponse de JulioDelphi
Maniaxman 159 Messages postés lundi 10 janvier 2005Date d'inscription 17 juillet 2008 Dernière intervention - 29 mai 2005 à 13:40
0
Merci
dsl, ce que je voulais dire c'était comment ne pas faire afficher "coller" dans le menu contextuel de l'edit, mais je crois que j'ai tout ce qu'il me faut, merci a vous tous
Commenter la réponse de Maniaxman

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.