PhilippeROB
Messages postés5Date d'inscriptionlundi 26 septembre 2005StatutMembreDernière intervention17 octobre 2005
-
7 oct. 2005 à 15:01
acecel
Messages postés140Date d'inscriptionjeudi 6 mai 2004StatutMembreDernière intervention14 octobre 2006
-
8 oct. 2005 à 12:57
Bonjour le forum,
J'ai conçu un projet constitué de plusieurs formes qui comportent chacune plusieurs objets (ComboBox, ListBox, CheckBox, ScrolBar...)
Je souhaiterais nommer ces objets par l'intermédiaire d'un tableau.
Exemple ->
Form1.CommandButton.caption=Tab(i,j)
avec i l'indice de langue et j, le nom de l'objet.
Imaginons :
- Tab(1,53)="continuer" en français
- Tab(2,53)="continuar" en Espagnol
- Tab(3,53)="continu" en Anglais
etc..
Mon code ne fonctionne pas et le fichier log m'indique le message suivant :
"La propriété caption dans CommandButton doit être une chaine entre guillemets"
Dois je comprendre que je dois nécessairement tapper en dur le texte des objets.
Ou puis je m'en sortir autrement ?
PhilippeROB
Messages postés5Date d'inscriptionlundi 26 septembre 2005StatutMembreDernière intervention17 octobre 2005 7 oct. 2005 à 15:41
Je vous remercie de bien avoir voulu me répondre. J'avais envisagé vos deux réponses avant de soumettre une question si banale mais aucune ne débloque le programme.
Il semble, d'après le message du fichier Log, que je sois obligé d'écrire le texte entre deux guillemets et que je ne puisse ni passer par une variable intermédiaire, ni forcer la chaine de caractères par la fonction convert string. Pour tout dire, cela m'étonne beaucoup.
PCPT
Messages postés13272Date d'inscriptionlundi 13 décembre 2004StatutMembreDernière intervention 3 février 201847 7 oct. 2005 à 16:05
salut
[VB6]
pas d'erreur chez moi.
essai ce code, s'il fonctionne, c'est que ton erreur vient d'ailleurs. peut-être la déclaration de ton type de tableau....
'ma Form1 contient 6 CommandBoutton1 indexés de 0 à 5
Dim TabLangues(1, 2) As String
'
'
Private Sub Form_Load()
'init tab
TabLangues(0, 0) = "boutton1"
TabLangues(0, 1) = "boutton2"
TabLangues(0, 2) = "fermer"
TabLangues(1, 0) = "chk 1"
TabLangues(1, 1) = "hello"
TabLangues(1, 2) = Me.Caption
'nomme
Dim i As Integer
For i = 0 To 5
If i < 3 Then
If i <> 0 Then
Command1(i).Caption = TabLangues(0, Int (i / 2) + 1)
Else: Command1(i).Caption = TabLangues(0, 0): End If
Else
If i <> 5 Then
Command1(i).Caption = TabLangues(1, Int (i / 2) - 1)
Else: Command1(i).Caption = TabLangues(1, 2): End If
End If
Next i
End Sub