Copy past

Résolu
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 - 15 juil. 2010 à 22:54
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 - 16 juil. 2010 à 20:32
Bonsoir ou Bonjour
La question n'est pas forcément en vb6
Est il possible que si je fais copy d'un string
et avant de faire past dans un textbox verifier
la longueur du string
par exemple si je veux limiter le textbox à x
charactères rien va empecher de faire copy et paste d'un string plus long que x
Merci

4 réponses

us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
16 juil. 2010 à 20:32
Re,

Ce que je te propose, c'est la limitation dans la texbox. Normalement, c'est le plus logique pour une application...

Ensuite, si tu veux vérifier avant de coller, c'est qu'à moitié possible et très délicat. En effet, COLLER ou COPIER utilise le presse papier (CLIPBOARD) et est en temps normale accessible par n'importe quelle application. Donc intervenir dessus peut poser des problèmes pour les autres applications. Et de toute façon, d'une manière ou d'une autre, il faudra lire les données qu'elle contient avant de les réduire à x caractères. Donc autant le faire sur le control récepteur. Car il semble évident que si la textbox doit être limité à x caractères, elle doit être limitée quelle que soit l'origine des données.

Amicalement,
Us.
3
us_30 Messages postés 2065 Date d'inscription lundi 11 avril 2005 Statut Membre Dernière intervention 14 mars 2016 10
15 juil. 2010 à 23:24
Bonsoir,

Private Sub Text1_Change()
Text1.Text = Left$(Text1, 5)
End Sub


Sans pour autant interdire de rentrer un texte en mettant le curseur à gauche avant la fin de la textbox.

Amicalement,
Us.
0
LIBRE_MAX Messages postés 1402 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 7 octobre 2012 6
16 juil. 2010 à 01:11
Salut,
rien n' empêche de vérifier après le paste,
à condition de sauver le contenu avant.
Comment ?

Private Sub Text1_GotFocus()
Text1.Tag = Text1.Text
End Sub

'Puis (au choix)
Private Sub Text1_Validate(Cancel As Boolean)
If Len(Text1.Text)>x Then
Text1.Text=Text1.Tag
'avec ou sans
Cancel=True
End If
End Sub

' ou bien
Private Sub Text1_LostFocus(Cancel)
If Len(Text1.Text)>x Then _
Text1.Text=Text1.Tag
End Sub

[] Ce qui va sans dire. va mieux en le disant.
0
cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
16 juil. 2010 à 16:59
Salut à tout le monde


Enfin ce ne pas vraiment ce que j'ai demandé
je veux vérifier avant le past.Je ne pense pas
que c'est possible
quand je marque un mot avec la souris et ensuite je click sur copy ou le contenu est copié?
A moins qu'il y ait une function api

us selon ta solution tu copies toujours x char
c'est peut etre la meilleur solution


merci à vous deux
0
Rejoignez-nous