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

Signaler
-
 klaus83 -
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

5 réponses

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
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
Bonjour,

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

Cheyenne
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
Re,

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

Cheyenne
Messages postés
693
Date d'inscription
samedi 18 mai 2002
Statut
Membre
Dernière intervention
17 avril 2017
2
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
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