SAISIES CONTROLÉES DIVERSES (ALPHABÉTIQUES ET NUMÉRIQUES)

Messages postés
4824
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
- - Dernière réponse : mannou1983
Messages postés
7
Date d'inscription
mercredi 19 mars 2008
Statut
Membre
Dernière intervention
7 mai 2008
- 10 avril 2008 à 14:44
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/42484-saisies-controlees-diverses-alphabetiques-et-numeriques

Afficher la suite 
cs_Exploreur
Messages postés
4824
Date d'inscription
lundi 11 novembre 2002
Statut
Membre
Dernière intervention
15 novembre 2016
11 -
Salut Jmfmarques,

Bon ce soir ou demain je regarde ta source et reviens plus tard....

Note : Maintenant on pourra mettre ce lien à des questions du forum portant sur ce sujet...lol..

A+
Exploreur
chaibat05
Messages postés
1884
Date d'inscription
samedi 1 avril 2006
Statut
Membre
Dernière intervention
20 novembre 2007
2 -
Salut Marques,

Ah l' événement Change () et le chien qui se mord la queue !
Personne ne me croit ...

Prenons
Private Sub Text1_Change()
Static stat1 As String
controle_texte "#", ActiveControl, stat1 ' > faisant un point d' arrêt à ce niveau
End Sub

Avec un chiffre pas de problème
Mais si on tappe "a"
> Execution de la fonction control
tout se passe bien jusqu' à
ctrl.Text mret > Déclenchement de Text1_Change()
et rééxécution de la fonction controle...

End Sub

Ma parade :
Public SelfChange As Boolean

Private Sub Text1_Change()
If SelfChange=True Then Exit Sub
SelfChange=True
Static stat1 As String
controle_texte "#", ActiveControl, stat1 ' > faisant un point d' arrêt à ce niveau
SelfChange=False
End Sub

A part ça je n' ai pas encore fait de tests approffondis.Mais à premier vue ça semble correct.
En fait j' ai tellement horreur de l' événement Change que je n' ai pas pu m' empêcher
de le tester en premier.


A+
cs_DARKSIDIOUS
Messages postés
15838
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
79 -
Hum, pourquoi faire le contrôle uniquement dans le change ? Dans le KeyPress, c'est plus esthétique : on ne voit pas les caractères si tu les annule lors de la saisie de l'utilisateur.

DarK Sidious
jmfmarques
Messages postés
7668
Date d'inscription
samedi 5 novembre 2005
Statut
Membre
Dernière intervention
22 août 2014
18 -
Oui, Nicolas, l'événement keypress n'est pas mal et est plus facile à programmer, mais....

Il te fayt alors également gérer (dans le click), l'impossibilité de copieés/collés !

De surcroit : OK, on gère le presse-papier (on le vide au click) mais en faisant ainsi tu ne peux plus, du coup, faire un copier-coller cohérent et voulu !

Mais pire encore : OK pour vider le presse-papier au click, mais voilà :
1) je frappe 1234,12
2) je clique et sélectionne
3) je relache la souris et y vais : CTRL-C ==>> 4 ou 5 fois CTRL-V ==>> vois le résultat

Ah zut, alors ! il va falloir gérer celà aussi ...
Allons bon ! Mais c'est faisable en effaçant aussi le clipboard et (également) en désélectionnant par sellenght au MouseUp !

Alors :
- 1e keypress pour gérer la frappe
- le click pour vider le clipboard de ce qui aurait été copié d'ailleurs
- le mouseup pour déselectionner de qui aurait été sélectionné dans la textbox même et vider aussi le clipboard...

et tu perds de toutes façon :
1) la possibilité de copier-coller souhaités depuis aolleurs
2) la possibilité de copier ta propre textbox pour coller ailleurs ...

Voilà pourquoi j'ai choisi l'événement change (un seul événement pour tout)

J'ai presque fini en ce qui concerne la saisie contrôlée des dates et heures.... Si j'utilisais pour ces saisies l'événement keypress, ce serait pire encore, sauf à inhiber carrément la souris !!!
diablamanshadow
Messages postés
420
Date d'inscription
lundi 30 août 2004
Statut
Membre
Dernière intervention
28 janvier 2008
-
et si a la place de tenter de tout gerer (si on passe par keypress) tu passe pas comme a dit darksidous par le keypress puis apres pour ton copier coller bah tu verifie avec le change le contenu du clipboard ...

si le clipboard est different de ce qui peut etre entrer bah tu le vide pas tu l'annul ...

perso j'ai pas looker le code car ses assez simple a faire mais bon c'est vrai que ses souvent demander sur le forum ou meme moi par mes contact msn ^^