Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

TEXTBOX EVOLUTION


Information sur la source

Catégorie :Formulaire Classé sous : textbox, sousclassement, numerique, format, saisie Niveau : Débutant Date de création : 12/01/2006 Date de mise à jour : 13/01/2006 17:03:15 Vu / téléchargé: 7 793 / 1 438

Note :
10 / 10 - par 1 personne
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (10)
Ajouter un commentaire et/ou une note


Description

Cliquez pour voir la capture en taille normale
Voici une TextBox un peu plus évoluée que celle de VB

Possibilité de définir les caractères autorisés
Possibilité de définir un formatage de la textbox
    - Ce formatage s'applique lorsque l'on quitte la textbox puis disparait quand on y revient
    - Possibilité d'afficher ce formatage avec ENTER. Appuyer sur ECHAP pour revenir en affichage normal
    - Exemple = "mm/dd/yyyy" pour une date à l'anglaise

Pour les nombres :
Possibilité de définir le séparateur décimal de son choix (il ne pourra donc être saisi qu'une seule fois)
Possibilité de définir le nombre max de décimales
Possibilité de définir un symbole decimal (ex : €) qui ne s'affiche qu'une fois le champs formaté
Possibilité de saisir un raccourci pour les milliers (ex : saisir 12K on obtient 12000)


Le problème dans ce genre de code c'est que l'on bloque souvent la saisie mais que l'on oublie que l'utilisateur peut contourner le problème avec un simple copier/coller. Et là .... la seule solution : le Sous-Classement pour repérer le COLLER avant qu'il ne se produise.
Et quand on fait du Sous-Classement en VB, rien de mieux que la DLL de Renfield. Elle est jointe au zip ;-)
Pensez donc pour ceux qui ne l'ont pas déjà (il y en a ??) à la placer dans le dossier system puis enregistrez la avec Regsvr32

 

Source

  • If YouWant Then
  • DownloadZip.Click
  • End if
  • Call HaveFun
If YouWant Then
   DownloadZip.Click
End if

Call HaveFun

Conclusion

J'ai posté cela suite à une demande du forum. Même si cela va beaucoup plus loin que la question posée.
http://www.vbfrance.com/forum.v2.aspx?ID=637794

Le code a été pas mal optimisé avec l'aide de Renfield (merci encore !).
N'hésitez pas à me faire part de vos observations.

 

Fichier Zip

Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

Historique

13 janvier 2006 17:03:16 :
Optimisation du code et ajout de nouvelles fonctions avec l'aide de Renfield

Commentaires et avis

signaler à un administrateur
Commentaire de ScSami le 12/01/2006 18:26:16

Hum... ça peut s'avérer utile!

signaler à un administrateur
Commentaire de Renfield le 13/01/2006 01:20:34 administrateur CS

ca fonctionne bien, un OCX qui fais son job...

orthographe de MaxLength

pour anuler le PASTE, tu peux faire :
If uMsg = WM_PASTE Then MsgBehavior = [MB Cancel Message]

plutot que de vider d'autorité le presse-papier

impossibilité de saisir une date avec des '.' comme séparateur

il manque la possibilité de modifier la police, couleur de fond, du texte, de désactiver le contrôle

signaler à un administrateur
Commentaire de bouv le 13/01/2006 08:09:58

Oui je sais il manque pas mal de propriété, mais j'ai fait ça vraiment rapidement, comme dit plus haut pour répondre a un message du Forum.

Si je trouve le temps, je corrige suivant tes quelques observations.
Par contre, pour le '.' comme separateur de date ; je vais y songer mais a premiere vu je vois pas trop comment faire, etant donné que c'est la fonction Format() qui gère cela.

Sinon je viens de me rendre compte que la propriété Alignment ne fonctionne pas... bizzare.

signaler à un administrateur
Commentaire de bouv le 13/01/2006 17:04:23

Code mis à jour ! J'ai quelque peu modifié la description en conséquence

signaler à un administrateur
Commentaire de fred_gaou le 15/11/2008 00:17:46 10/10

Salut Bouv,

C'est un excellent travail. C'est presque tout ce que je cherchais pour mon travail, je suis complètement débutant.

J'espère que le projet n'est pas mort et que tu pourras améliorer le code selon ces observations pour la textbox numérique qui serait parfaite ainsi pour mes besoins:

- autoriser Ctrl+C , Ctrl+V et Ctrl+X
- une apparence 3D comme la textbox original serait du plus bel effet.
- pouvoir éliminer le symbol monétaire

En attente de tes nouvelles.

signaler à un administrateur
Commentaire de fred_gaou le 15/11/2008 00:31:17

Ah oui, étant donné qu'il faut placer dans le système et inscrire Rey_SubClasser.dll au registre, je suppose qu'un .exe qui fait ça à son exécution ne pourra pas fonctionner dans un environnement protégé (entreprise), s'il est lancé par l'employé lambda ne disposant pas des droits nécéssaires.

Si c'est le cas, y aurait-il une solution pour que le programme fonctionne dans ces environnements?

signaler à un administrateur
Commentaire de bouv le 15/11/2008 10:09:26

Désolé mais je n'utilise plus cette source depuis longtemps. Je n'utilise d'ailleurs même plus VB6 (je suis passé en .NET).
Cela dit de mémoire :
- Copier, Couper et Coller sont interdit volontairement afn d'éviter que des caractères interdits ne soit insérés dans le TextBox (exemple : insérer des lettres dans un TexBox numérique.
- Pas d'apparence 3D volontairement aussi pour la ressemblance XP
- Il existe une propriété pour modifier le symbole monétaire. Un vide ou un espace doivent donc le supprimer
- Pour te passer de la DLL tu peux regarder dans les sources de Renfield il a publier un module qui rend les mêmes services et que tu pourra intégrer à ce projet. Les adaptation necessaires seront mineures.

Pour info en VB.NET, la TextBox de base rempli déjà toutes ces fonctions. Que du bonheur !

Bonne prog
++

signaler à un administrateur
Commentaire de fred_gaou le 15/11/2008 12:44:36

Merci pour ta réponse. Je crois que je vais donc passer à VB.NET. N'empêche que tu avais fait du sacré bon boulot en VB6 ;)

signaler à un administrateur
Commentaire de fred_gaou le 16/11/2008 22:05:58

Bouv, je suis en train de tester "MS VB 2008 Express edition". Quand tu dis que la textbox de base peut-être configurée comme le premier modèle de ta textbox evolution, tu veux dire que les options sont accessibles dans les propriétés du control? Parce que je trouve rien qui y ressemble avec avec la textbox de base. Par contre le maskedtextbox est intéréssant mais je n'arrive pas non plus à obtenir le même comportement que dans la textbox evolution. Ou alors tu parlais de la fonction "isnumeric"?

Tu peux me dire comment tu fais pour obtenir le comportement du 1er modèle de la textbox evolution avec "MS Visual Basic 2008 Express edition"? Est-ce que Ctrl+C , Ctrl+V et Ctrl+X fonctionne dans ce cas de figure?

Merci

signaler à un administrateur
Commentaire de bouv le 17/11/2008 07:29:23

Oui effectiveemnt je voulais parler du MaskedTextBox. Pour obtenir plus de renseignements sur son utilisation, tu peux te rendre à cette adresse (bas de page) :
http://plasserre.developpez.com/v3-4.htm

Et plus généralement pour toutes autres questions sur l'utilisation de VB.Net :
http://plasserre.developpez.com/vsommair.htm

Bonne prog
++

Ajouter un commentaire

Discussions en rapport avec ce code source dans le forum

Afficher un format date en saisie dans un textbox [ par lurevital ] Bonjour,Je ne sais pas comment faire en VB pour pouvoir saisir une date dans un textbox en faisant afficher à l'utilisateur quelque chose du genre JJ/ >> Chnager le format d'un nombre... [ par tomatokatchup007 ] J'ai un nombre de ce style dans une de mes textbox : "1.23"Comment faire pour enregistrer ce nombre sous la forme "1.230000" dans un fichier text?Et c Affichage d'une date dans un textbox [ par micaloul ] Salut,En VB, comment fait-on pour afficher une date saisie au formatJJMMAAAA en JJ/MM/AAAAC'est à dire afficher en temps réél les "/"ex: je tape "2512 saisie dans textbox [ par SesechXP ] Salut!Je voulais juste savoir si on pouvait empêcher la saisie de caractères alphabétiques et la saisie d'un point à la place d'une virgule... controle de saisie dans une textbox [ par emeraudes ] bonjoursur visual studio .net en visual basicos: xindows xpje voudrais faire un controle de saisie dans une textbox enfin plutot interdire de rentrer Pb date en vba [ par nosouci ] Salut à tous, mon problème est simple : l'utilisateur rentre une date dans une textbox et je voudrais tester que ce soit en format date jj/mm/aa et em Position du Curseur et TextBox [ par letoiia ] LetoiiaBonjour !ma question est simple à formuler mais je pense qu'il est difficile d'y répondre.J'ai un composant TextBox (Que j'ai developpé pour gé textbox et format [ par lpnc3po ] qd je choisi un format ds les propriétés des textbox, lorsque le programme s'execute le format n'y est pas.qlq'un peut il m'aider ? Comment choisir le format d'un TextBox (VB6) [ par ludolitaliano ] Bonjour,comment fait-on pour choisir le format d'un TextBox; je voudrait que la valeur d'un TextBox soit du type ### ### (séparateur de miliers et san format de textbox et boutons en vb.net? [ par abari ] salut tt le monde,j'aimerai bien rendre mes textbox aussi mes boutons arrondis sous vb.net aussi changer la couleur de la bordure arrondimerci de m'ai


Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,718 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.