CONVERSION DEC / HEX / BIN (WIN 32)

dekkatlon Messages postés 2 Date d'inscription jeudi 17 juillet 2003 Statut Membre Dernière intervention 19 juillet 2003 - 19 juil. 2003 à 23:53
cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 - 28 août 2003 à 22:42
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/11096-conversion-dec-hex-bin-win-32

cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
28 août 2003 à 22:42
Probleme résolu grace au sous classement des edit-box.
cs_aardman Messages postés 1905 Date d'inscription mercredi 22 janvier 2003 Statut Membre Dernière intervention 17 septembre 2012 3
20 juil. 2003 à 00:40
Salut,

En effet j'avais deja essayé de resoudre ce probleme, en essayant d'envoyer un message WM_UNDO au control pour effacer la derniere saisie, mais ca m'avait apporte plein d'autres problemes donc j'avais abandonné cette idée.

Sinon pour ta méthode, c'est une bonne idée mais:

1) *p = '' ne se compile pas chez moi (encore ca c'est pas grave, suffit de faire une fonction qui efface le *p actuel et décale la chaine de caractere d'un caractère).
2) A chaque notification de message EN_UPDATE je teste le focus pour savoir si c'est une update de l'USER ou si c'est une update du programe lui meme. Utiliser la fonction SetDlgItemText juste apres la MessageBox genererait une boucle infinie de message EN_UPDATE car le control à le focus (donc plantage).

Pour resoudre ce probleme je crois qu'il faudrais que je revois entierement la structure du prog.

merci encore pour le commentaire!
dekkatlon Messages postés 2 Date d'inscription jeudi 17 juillet 2003 Statut Membre Dernière intervention 19 juillet 2003
19 juil. 2003 à 23:53
Programme intéressant, j'ai noté un bug suite aux limitations dans la saisie des cars, par exemple si on saisie 'P' dans la zone décimale on a bien un message d'erreur mais le 'P' est quand même intégré dans la zone d'édition. Pour éviter çà on peut ajouter après les MessageBox le code suivant:
*p = '';
SetDlgItemText(hDlg, IDC_DEC, szBufToCheck);

idem pour IDC_HEX et IDC_BIN
Rejoignez-nous