Récupérer du texte dans une TextBox pour l'afficher dans un contrôle Label (VB6) [Résolu]

- - Dernière réponse :  klaus83 - 15 avril 2013 à 17:55
Bonjour,
La visionneuse de Win 7 ne lisant plus les gifs animés, j'ai créé une petite application à l'aide du contrôle activeX AniGif.ocx, qui me permet de visionner ces fichiers au Fur et à mesure de leur sélection dans une FileList. j'ai voulu afficher les dimensions de l'image dans un contrôle Label avec un code (VB6) du genre :
Label.Caption = "Largeur Image x Hauteur Image".
Malheureusement le Label affiche toujours la taille de l'image précédente quelque soit l'évènement dans lequel je place ce code.
C'est peut-être dû aux caractéristiques du contrôle AniGif.ocx.
J'ai donc trouvé un extrait de code qui permet d'afficher, dans une TextBox, les propriétés du fichier affiché, contenant entr'autre les dimensions de l'image. (voir copie ci-dessous :



J'aimerai donc pouvoir extraire de la TextBox les dimensions de l'image (Ici 199x121) pour les afficher dans un contrôle Label, si c'est possible. Merci par avance de votre aide
klaus83
Afficher la suite 

Votre réponse

5 réponses

Meilleure réponse
3
Merci
Bonjour,
Je viens de me souvenir qu'on pouvait faire un recherche avec une boucle For...Next et la fonction Mid. Voici donc ce que j'ai écrit et qui fonctionne très bien :

[i]Dim RetVal As String, I As Integer, X As Integer, Long As Integer

'La chaine recherchée est "199 x 121"
For I = 500 To Len(Text1.Text) 'Je raccourci la recherche de "?"
RetVal = Mid(Text1.Text, I, 1) 'Recherche caractère par caractère
If RetVal = "?" Then
X = I + 1 'Départ de la recherche de "199 x 121"
Exit For
End If
Next
Long = Len(Text1.Text) - (X + 2) 'Longueur de la chaine "199 x 121"
Lbl.Caption = Mid(Text1.Text, X, Long) 'Ecriture de la chaine dans le Label /i

Donc ma question n'a plus lieu d'être car le problème est résolu.
Merci tout de même à ceux qui ont pu s'y intéresser.

klaus83

Merci klaus83 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 100 internautes ce mois-ci

Commenter la réponse de klaus83
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Dernière intervention
17 avril 2017
3
Merci
Bonjour,

Au lieu de récupérer la position de "?" à l'aide d'une boucle, utilises plutôt l'instruction Instr.

Cheyenne

Merci cs_cheyenne 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 100 internautes ce mois-ci

Commenter la réponse de cs_cheyenne
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Dernière intervention
17 avril 2017
3
Merci
Re,

Encore mieux, faire un Split du texte :
Dim t() As String
Lbl.Caption = Split(Text1.Text, "?")(1)

Cheyenne

Merci cs_cheyenne 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 100 internautes ce mois-ci

Commenter la réponse de cs_cheyenne
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Dernière intervention
17 avril 2017
3
Merci
Re,

Oups ! Dans le code précédent le tableau t() est inutile.
Par contre il est utile dans le code suivant :
Dim t() As String
t = Split(Text1.Text, "?")
Lbl.Caption = t(1)

Cheyenne

Merci cs_cheyenne 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources a aidé 100 internautes ce mois-ci

Commenter la réponse de cs_cheyenne
0
Merci
Bonjour,
Je ne connaissais pas les fonctions InStr et Split, elles sont très pratiques et efficaces. J'ai utilisé Split qui donne un code très compact.
Merci de ton aide Cheyenne, mon problème est résolu.

klaus83
Commenter la réponse de klaus83

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.