Bonjour a tous et bonne année.
Voila, un petit qui permet de resoudre des Sudoku, fait avec Masm32.
Utilisation:
Rentré les différentes valeurs dans la grille, puis cliqué sur "Solutions possible",
le programme va alors recherché les solutions possibles et les affichés au-dessus de la cases.
Si plusieurs solutions sont possibles dans une case, essayer de rentrer manuellement une valeur
indiquer au-dessus de celle-ci, et cliquer de nouveau sur "Solutions possible", si cette valeur rentré manuellement
ne convient pas, alors vous aurez une MessageBox.
NB: Affichage des solutions possibles en rouge
Affichage des chiffres dans les zone d'edition en Noir tant qu'on a pas cliqué sur "Solution Possible",
puis affichage en vert, afin de mieux reperer la case qu'on a modifié.
Possibilité d'enregistrer une grille. J'ai choisi comme extension de fichier pour l'enregistrement,
ainsi que pour l'ouverture l'extension *.sud, je ne sais pas si cette extension est déjà utiliser
pour un certain de type de fichier.
4 exemples de grille mis dans le dossier Grille contenu dans le zip.
BUG connu (mais je ne sais pas comment y remedier):
C'est au niveau de la couleur des static, j'ai fait ceci:
;------------------------------------------------------------------------------------------------------------
.elseif uMsg == WM_CTLCOLORSTATIC ;lParam contient le HWND et wParam conteient le HDC du control
invoke GetDC, lParam ; Permet de recuperer
invoke GetPixel, eax, 5, 5 ; la couleur du fond
invoke CreateSolidBrush, eax ; et ainsi
mov hStaticColor, eax ; garder la meme
invoke SetBkMode, wParam, TRANSPARENT ; couleur de fond
invoke SetTextColor, wParam, Red ; Met la couleur du texte en rouge
mov eax, hStaticColor ;
ret ;
;------------------------------------------------------------------------------------------------------------
Ceci me met bien la couleur du texte des static en rouge, met si je clique plusieurs fois de suite
sur le bouton "Solution Possible", et ben de temps en temps, la couleur du texte redevient noir.
Si quelqu'un saurait pourquoi?, merci.