Réglage d'un textbox majuscule [Résolu]

Sinsitrus 863 Messages postés samedi 11 juin 2005Date d'inscription 21 août 2015 Dernière intervention - 7 juil. 2010 à 12:31 - Dernière réponse : Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention
- 8 juil. 2010 à 01:42
Salut !

Je rencontre un problème sur ce bout de code et n'arrive pas à le résoudre. Pouvez vous m'aider svp ?

Private Sub TextBox_Change()
TextBox.Text = StrConv(TextBox.Text, vbUpperCase)
End Sub


Il convertis les textes minuscule en majuscule, mais le hic est que lorsque je viens au milieu du mot et veux par exemple modifier une lettre ou en ajouter une, il écrit bien la lettre mais se retrouve automatiquement à la fin de la phrase.

Exemple, si je veux écrire : BONJOUR LE MONDE
J'ai oublié de mettre un mot, je viens sur l'emplacement voulu et ajoute TOUT
J'écris : BONJOUR T LE MONDEOUT
Je suis obligé à chaque fois de venir sur
T, puis O, puis U, puis T pour avoir le bon mot "TOUT"

Comment résoudre ce problème ?

Merci

----------
OS : Windows XP SP3 et Vista 32
Platforme : VB 6.0 + SP6
Ok VB6.0 c'est pas net !
Afficher la suite 

Votre réponse

9 réponses

Meilleure réponse
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 7 juil. 2010 à 15:12
3
Merci
Private Declare Function SetWindowLong Lib "user32.dll" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function GetWindowLong Lib "user32.dll" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Private Const ES_UPPERCASE As Long = &H8&
Private Const GWL_STYLE As Long = -16

Private Sub Form_Load()
Dim eStyle As Long
    eStyle = GetWindowLong(Text1.hwnd, GWL_STYLE)
    SetWindowLong Text1.hwnd, GWL_STYLE, eStyle Or ES_UPPERCASE
End Sub


Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp

Merci Renfield 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 123 internautes ce mois-ci

Commenter la réponse de Renfield
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 7 juil. 2010 à 13:58
0
Merci
changes son style, ajoutes y ES_UPPPER

SetWindowLong
GetwindowLong
...

Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
Commenter la réponse de Renfield
BOBO CALIMERO 22 Messages postés vendredi 31 octobre 2003Date d'inscription 2 novembre 2010 Dernière intervention - 7 juil. 2010 à 14:27
0
Merci
Eventuellement, tu peux mettre ta fonction de conversion majuscules dans un gestionnaire Sub TextBox_LostFocus() plutôt que Sub TextBox_Change(). Ton texte ne sera convertit qu'à la fin mais tu évite ton problème de curseur mal positionné...
Commenter la réponse de BOBO CALIMERO
Sinsitrus 863 Messages postés samedi 11 juin 2005Date d'inscription 21 août 2015 Dernière intervention - 7 juil. 2010 à 14:39
0
Merci
C'est vrais mais question esthétique... c'est mort :p

J'ai trouvé les deux api Renfield mais je n'ai jamais utiliser ES_UPPPER...
Commenter la réponse de Sinsitrus
Sinsitrus 863 Messages postés samedi 11 juin 2005Date d'inscription 21 août 2015 Dernière intervention - 7 juil. 2010 à 16:06
0
Merci
Merci Renfield...

Je me demande où j'aurai trouvé ce code :s
Encore merci pour ton aide.
Commenter la réponse de Sinsitrus
Sinsitrus 863 Messages postés samedi 11 juin 2005Date d'inscription 21 août 2015 Dernière intervention - 7 juil. 2010 à 16:40
0
Merci
J'ai réussi à trouvé pour la minuscule

Private Const ES_LOWERCASE As Long = &H10&

Il ne me reste plus que pour le ProperCase
Peux tu m'aider encore une fois stp Rendfield ?
Commenter la réponse de Sinsitrus
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 7 juil. 2010 à 20:44
0
Merci
ProperCase ?
Cela n'existe pas, a ma connaissance.... pas sous cette forme

la solution a tout cela peut etre de se greffer dans le KeyDown
et modifier les choses a ta convenance...

ahm et un seul 'd' dans Renfield ^^

Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
Commenter la réponse de Renfield
Sinsitrus 863 Messages postés samedi 11 juin 2005Date d'inscription 21 août 2015 Dernière intervention - 7 juil. 2010 à 22:07
0
Merci
lol oui je me suis rendu compte du "d" :p
En tout as merci pour ton aide... ce code m'aidera vraiment et me facilitera beaucoup dans mes prochaines sources...

Je t'enverrai un de ces jours le résultat de tout ça ;)
Encore merci Rendfield
Commenter la réponse de Sinsitrus
Renfield 17307 Messages postés mercredi 2 janvier 2002Date d'inscription 18 janvier 2017 Dernière intervention - 8 juil. 2010 à 01:42
0
Merci
lol oui je me suis rendu compte du "d" :p


...

Encore merci Rendfield


^^

Renfield - Admin CodeS-SourceS - MVP Visual Basic & Spécialiste des RegExp
Commenter la réponse de Renfield

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.