Déplacement avec flèches dans un pavé de textbox 9x9 dynamique

Description

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

Codes Sources

A voir également

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.