Bonjour
J' ai un problème avec une grille de Sudoku de 9x9 TextBox.
J'arrive bien à naviguer avec les touches Droite/Gauche, mais pas avec Haut/Bas.
Voici un extrait du code:
PrivateSubGrille_KeyDown(ByValsenderAsObject, ByValeAsSystem.Windows.Forms.KeyEventArgs) HandlesGrille.KeyDown
DimlAsInteger, cAsInteger
DimvalAsInteger
DimIndexAsShort = Me.Grille.Controls.IndexOf(sender)
SelectCasee.KeyCode
CaseKeys.Left
Index = Index - 1
IfIndex < 0 ThenIndex = 80
Me.Grille.Controls.Item(Index).Focus()
CaseKeys.Right
Index = Index + 1
IfIndex > 80 ThenIndex = 0
Me.Grille.Controls.Item(Index).Focus()
CaseKeys.Up
Index = Index - 9
IfIndex < 0 ThenIndex = Index + 81
Me.Grille.Controls.Item(Index).Focus()
CaseKeys.Down
Index = Index + 9
IfIndex > 80 ThenIndex = Index - 81
Me.Grille.Controls.Item(Index).Focus()
end sub
Avec Droite/Gauche je balai bien les cases avec retour à la ligne et retour a la case 1 après la case 81.
Avec Haut/Bas, le focus tente de se déplacer à la case suivante, mais retour à la case départ.
PS : Grille est un contrôle personnalisé de 81 TextBox et j'ai fait un AddHanler sur tous les TextBox pour éxecuter l'évenement KeyDown.
Merci.