Déplacement avec les flèches entre textbox créés dynamiquement et constituant un pavé de 9 x 9 (Sudoku, mots-croisés)...
En VB6.
Points abordés :
- Création dynamique (logique) d'objets indicés
- Déplacement avec les flèches entre textBox
Source / Exemple :
Sub Form_Load()
Dim i As Byte
Dim x As Integer
Dim y As Integer
x = 0
y = 10
For i = 1 To 81
Load Text1(i)
Text1(i).Left = (Text1(0).Width * x) + 5
Text1(i).Top = y
Text1(i) = Format(i, "00")
Text1(i).Visible = True
x = x + 1
If x = 9 Then
x = 0
y = y + Text1(0).Height
End If
Next i
End Sub
Sub Form_Activate(): Text1(1).SetFocus: End Sub
Sub text1_KeyDown(Index As Integer, KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case 37 ' left
Select Case Index
Case 1, 10, 19, 28, 37, 46, 55, 64, 73: Text1(Index + 8).SetFocus
Case Else: Text1(Index - 1).SetFocus
End Select
Case 38 ' up
If Index < 10 Then Text1(Index + 72).SetFocus
If Index > 9 Then Text1(Index - 9).SetFocus
Case 39 ' right
If Index Mod 9 = 0 Then Text1(Index - 8).SetFocus
If Index Mod 9 <> 0 Then Text1(Index + 1).SetFocus
Case 40 ' down
If Index < 73 Then Text1(Index + 9).SetFocus
If Index > 72 Then Text1(Index - 72).SetFocus
End Select
End Sub
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.