Se connecter avec
S'enregistrer | Connectez-vous

afficher les lettre trouver (ex : pour le pendu)

Dernière réponse : dans Programmation
Lassé par la pub ? Créez un compte

non car ca doit changer la lettre d'un mot tout en conservant le mot . (noubliez pas que c un pendu)

exemple le mot est chien

_ _ _ _ _

je trouve le lettre i, donc je veux que le label se transforme en :

_ _ i _ _

je trouve la lettre n, donc je veux que le label se transforme en :

_ _ i _ n

vous avez compris ?

merci pour votre aide les gars (chui debutant)

tu as ton mot exact et un label...

si la lettre tapée fait partie du mot exact :

1) repérer la ou les positions de la lettre à afficher
(par la fonction instr )
2) modifier les _ par la lettre

si je reprends ton exemple :

dim mot_a_trouver as string = "chien"
dim i as integer
i = -1
do while i <> 0
i = instr(i,mot_a_trouver,lettre_tapée,)
if i = 0 then
'lettre à afficher
label1.caption = lettre_tapée & mid(label1.caption,i+1)
elseif i > 1 then
label1.caption = left(label1.caption,i-1) & lettre_tapée & mid(label1.caption,i+1)
endif
loop

la boucle est là pour gérer le cas où tu as plusieurs lettres à afficher en même temps

tu n'as plus qu'à placer ce code dans le bon évenement (clic sur un bouton, etc...)

Voici le code si quelqu'un peut m'aider, merci beaucoup
----------------------------------------------------------

Public mot As String
Public nbrl As Integer

Private Sub Command1_Click()
'déclaration des variables
Dim i As Integer
Dim essai As String
Dim lettre As String

'introduction des données
Label3.Caption = ""
aic = "0"
Text1 = ""
Text2 = ""
mot = InputBox("entrer le mot")
nbrl = Len(mot)

For i = 1 To nbrl
Label3.Caption = Label3.Caption + "_ "
Next i

End Sub

Private Sub Command2_Click()
'introduction des données
If mot = "" Then
Command2 = False
MsgBox ("Entrer d'abord le mot avant de taper une lettre")
Else
lettre = InputBox("entrer la lettre")
aic = aic + 1
ind = 1

For i = 1 To nbrl
If Mid(mot, i, 1) = lettre Then
Text1 = Text1 + " " + lettre
Label3.Caption = Left(Label3.Caption, i - 1) & lettre & Mid(Label3.Caption, i + 1)
End If
Next i
End If

If ind = 1 Then
Text2 = Text2 + " " + lettre
End If

If Len(Text1) = Len(mot) * 2 Then
MsgBox ("Félicitation, le mot était : " + mot + " !")
End If


End Sub
Lassé par la pub ? Créez un compte
Tom's guide dans le monde