Incrémenter une textbox

Résolu
Antikaal Messages postés 13 Date d'inscription dimanche 3 décembre 2000 Statut Membre Dernière intervention 15 avril 2008 - 14 avril 2008 à 14:16
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 - 15 avril 2008 à 16:05
Bonjour à tous,
voila j'ai réussi à générer des textbox sous forme d'équation:

http://imageshack.us
maintenant j'aimerai que apparaisse dans la textbox1 1 , textbox2 2 , textbox3 = 3 ,.......etc
quenlqu'un pourrai m'aider svp ??

merci d'avance ;)

19 réponses

jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
15 avril 2008 à 11:51
Re,
Effectivement j'avais pas su lire

Est ce que l'ordre de création est important? je veux dire par là que actuellement tu as par exemple les indices suivant pour les textbox
Essaie peu etre cela. mais a présent les indices sont modifés.

Private Sub Command1_Click()
Dim NumTxt As Integer
Dim i As Integer ' ATTENTION comme i, n, m etaient
Dim Colonne As Integer
Dim Ligne As Integer
   Text1(0).Visible = True
   Text1(0).Text = "1"
   NumTxt = CInt(Text2(0).Text)
 
   If Text1.Count <> 1 Then
       For g = Text1.Count - 1 To 1 Step -1
           Call Unload(Text1(g))
       Next
   End If
   For i = 1 To ((NumTxt) ^ 2) - 1
       Call Load(Text1(i))
       With Text1(i)
           Colonne = i Mod NumTxt           If Colonne 0 Then Ligne Ligne + 1
           .Visible = True
           .Text = CStr(Colonne + 1)
           .Left = Text1(0).Left + (Colonne * Text1(0).Width) + 15
           .Top = Text1(0).Top + (Ligne * Text1(0).Height)
       End With
   Next i
End Sub , ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
3
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
15 avril 2008 à 14:38
RE,

Si la chaine "fixe" ne change pas d'une ligne à l'autre, regarde comment concaténer une chaine de caractère. Car en fin de compte ce n'est rien de plus que cela.

@+: Ju£i?n
Pensez: Réponse acceptée
3
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
15 avril 2008 à 16:05
Re,
Oups les parentheses n'était pas au bon endroit , mais la encore tu aurais pu le voir. Il faut comprendre les codes proposé

.Left = Text1(0).Left + Colonne * (Text1(0).Width + 50)

@+: Ju£i?n
Pensez: Réponse acceptée
3
oommeeggaa3d Messages postés 97 Date d'inscription dimanche 24 avril 2005 Statut Membre Dernière intervention 3 septembre 2010
14 avril 2008 à 14:23
comment as tu générer tes textbox ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
14 avril 2008 à 14:32
Salut,
Effectivement, il serait utile de savoir comment sont générer les TExtbox.

Si tu as fait des groupes de controles tu peux te servir de leur propriétés Index .

Sinon tu te sert de ta variable de boucle pour inscrire la valeur dans le textbox (Propriété Text) . en fait je ne vois pas trop quel est le problème

@+: Ju£i?n
Pensez: Réponse acceptée
0
Antikaal Messages postés 13 Date d'inscription dimanche 3 décembre 2000 Statut Membre Dernière intervention 15 avril 2008
14 avril 2008 à 14:33
Private Sub Command1_Click()
Dim NumTxt As Integer
Dim i, n, m, z As Integer
 
 Text1(0).Visible = True
NumTxt = CInt(Text2(0).Text)

If Text1.Count <> 1 Then
    For g = Text1.Count - 1 To 1 Step -1
        Call Unload(Text1(g))
    Next
End If
r = 0
For i = 1 To ((NumTxt) ^ 2) - 1
r = r + 1

     Call Load(Text1(i))

    With Text1(i)
        
        .Text = ""
        

        
        .Left = Text1(i - 1).Left
        
        .Top = Text1(i - 1).Top + Text1(i - 1).Height + 120
    
        .Visible = True
    
        If r Mod (NumTxt) = 0 Then
        Text1(i).Left = Text1(i).Left + 800
        Text1(i).Top = Text1(0).Top
        End If
    
    End With
    
Next i

End Sub

Private Sub Form_Load()
Text1(0).Visible = False
End Sub
0
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
14 avril 2008 à 14:48
Salut,

Private Sub Command1_Click()
Dim NumTxt As Integer
Dim i As Integer ' ATTENTION comme i, n, m etaient
Dim n As Integer 'comme tu les déclarais des Varaint
Dim m As Integer, z As Integer

   Text1(0).Visible = True
   Text1(0).Text = "1"
   NumTxt = CInt(Text2(0).Text)

   If Text1.Count <> 1 Then
       For g = Text1.Count - 1 To 1 Step -1
           Call Unload(Text1(g))
       Next
   End If
   r = 0
   For i = 1 To ((NumTxt) ^ 2) - 1
       r = r + 1
       Call Load(Text1(i))
       
       With Text1(i)
           .Text = i + 1
           .Left = Text1(i - 1).Left
           .Top = Text1(i - 1).Top + Text1(i - 1).Height + 120
           .Visible = True
   
           If r Mod (NumTxt) = 0 Then
               .Left = .Left + 800
               .Top = Text1(0).Top
           End If
   
       End With
   
   Next i

End Sub<hr />
Private Sub Form_Load()
   Text1(0).Visible = False
End Sub , ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
0
Antikaal Messages postés 13 Date d'inscription dimanche 3 décembre 2000 Statut Membre Dernière intervention 15 avril 2008
14 avril 2008 à 15:06
merci pour la réponse j'y avait deja pensez mais je me suis mal exprimé;   :s
comme je l'ai dit c'est sous forme d'équation alors au lieu d'écrire verticalement, il faudrai que les chiffres s'incrémente horizontalement et à chaque lignes reviennent de zéro.

voila je pense être bien clair.
si pas demander explication ^^
0
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
14 avril 2008 à 15:14
Re,

Sais pas si j'ai tout compris mais essaie ceci alors. (sert toi de ton test
If r Mod (NumTxt) = 0 Then Qui te permet de savoir QUAND tu change de colonne)
Private Sub Command1_Click()
Dim NumTxt As Integer
Dim i As Integer ' ATTENTION comme i, n, m etaient
Dim n As Integer 'comme tu les déclarais des Varaint
Dim m As Integer, z As Integer

   Text1(0).Visible = True
   Text1(0).Text = "1"
   NumTxt = CInt(Text2(0).Text)
   
   If Text1.Count <> 1 Then
       For g = Text1.Count - 1 To 1 Step -1
           Call Unload(Text1(g))
       Next
   End If
   r = 0
   n = 1
   For i = 1 To ((NumTxt) ^ 2) - 1
       r = r + 1
       n = n + 1
       Call Load(Text1(i))
       
       With Text1(i)
           .Text = CStr(n)
           .Left = Text1(i - 1).Left
           .Top = Text1(i - 1).Top + Text1(i - 1).Height + 120
           .Visible = True
   
           If r Mod (NumTxt) = 0 Then
               n = 1
               .Text = CStr(n)
               .Left = .Left + 800
               .Top = Text1(0).Top
           End If
   
       End With
 
   Next i

End Sub , ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
0
Antikaal Messages postés 13 Date d'inscription dimanche 3 décembre 2000 Statut Membre Dernière intervention 15 avril 2008
15 avril 2008 à 11:37
bon et bien je doit vraiment avoir du mal a m'exprimer :s

ton programme permet d'écrire 1,2,3,4,5...... par colonne et moi je voudrai que sa se fasse par ligne :)
0
Antikaal Messages postés 13 Date d'inscription dimanche 3 décembre 2000 Statut Membre Dernière intervention 15 avril 2008
15 avril 2008 à 13:49
merci bien c'est nikel mais j'aurai une autre question encore.
désoler de t'embeter mais je débute.
donc : est-il possible en plus des chiffres entré une lettre dans chaque textbox

exemple : I1, I2, I3, I4, I5,......???

et sinon pour ces textbox la l'ordre des indices n'a pas d'importance donc je te remercie encore une fois ;)
0
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
15 avril 2008 à 13:59
Salut,
Oui c'est possible,  Mais au vu du code que je t'ai passé par rapport au code de départ, tu pourrais essayer de trouver seul non?

Tu as bien trouvé quelle ligne te permettait de mettre les chiffres non?

@+: Ju£i?n
Pensez: Réponse acceptée
0
Antikaal Messages postés 13 Date d'inscription dimanche 3 décembre 2000 Statut Membre Dernière intervention 15 avril 2008
15 avril 2008 à 14:34
oui oui j'ai bien compris le programme et donc je sais comment les chiffres sont inscrit seulement.
je ne sais pas quel code utiliser pour pouvoir entré une lettre "fixe" en plus des chiffres dans chaque textbox
0
Antikaal Messages postés 13 Date d'inscription dimanche 3 décembre 2000 Statut Membre Dernière intervention 15 avril 2008
15 avril 2008 à 14:46
ha merci beaucoup j'avoue que j'ai essayé de faire comme dans Qbasic et donc mettre une virgule.
mais je n'avai pas pensé à ce symbole :/
0
Antikaal Messages postés 13 Date d'inscription dimanche 3 décembre 2000 Statut Membre Dernière intervention 15 avril 2008
15 avril 2008 à 15:23
il y as quand meme un problème que je n'arrive pas à résoudre.
si j'ai bien compris tu géneres les textbox par ligne et non par colonnes pour pouvoir y introduire les chiffres

mon problème : quel valeur changé pour pouvoir décaler les texbox de chaque ligne et non de chaque colonnes ??
0
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
15 avril 2008 à 15:28
Salut,
Tu veux dire revenir à ton mode de création précédente???
Si c'est aps ca j'ai pas compris

@+: Ju£i?n
Pensez: Réponse acceptée
0
Antikaal Messages postés 13 Date d'inscription dimanche 3 décembre 2000 Statut Membre Dernière intervention 15 avril 2008
15 avril 2008 à 15:38
je voudrai savoir comment déplacer vers la droite,avec un même esapce, chaque textbox de chaque ligne.
Ce qui aurai pour effet de créer un espace entre chaque colonne.
0
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
15 avril 2008 à 15:42
Salut,
Essaie en juant avec la valeur du 15

.Left = Text1(0).Left + (Colonne * Text1(0).Width + 15)

@+: Ju£i?n
Pensez: Réponse acceptée
0
Antikaal Messages postés 13 Date d'inscription dimanche 3 décembre 2000 Statut Membre Dernière intervention 15 avril 2008
15 avril 2008 à 15:54
cela me décale toute les textbox par rapport à la première et non les une par rapport au autre.

http://img515.imageshack.us/my.php?image=vbfranceai1.jpg
0