tophe03
Messages postés327Date d'inscriptionlundi 24 janvier 2005StatutMembreDernière intervention14 avril 2010
-
23 août 2005 à 07:03
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019
-
25 août 2005 à 22:05
Bonjour
J'ai un souci concernant une appli mettant en jeu 2 fenêtres. En fait c'est lors de l'ouverture de la 2ème que le problème se pose. Voici une partie du code:
int WINAPI WinMain(HINSTANCE hinstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
HACCEL haccel;
Lorsque la fenêtre Graph est ouverte, une boite de dialogue s'ouvre, et c'est là que ça foire. Cette dernière clignote; en fait, c'est comme si elle s'ouvrait indéfiniment, même sans rien entrer (editbox).
tophe03
Messages postés327Date d'inscriptionlundi 24 janvier 2005StatutMembreDernière intervention14 avril 2010 23 août 2005 à 22:09
C'est bon, ça marche. Merci pour ton aide.
J'ai un autre souci. Je sais comment récupérer un entier ou une chaine de caractères à partir d'une boite de dialogue, mais comment peut on faire pour récupérer un double?
Vous n’avez pas trouvé la réponse que vous recherchez ?
tophe03
Messages postés327Date d'inscriptionlundi 24 janvier 2005StatutMembreDernière intervention14 avril 2010 25 août 2005 à 19:51
salut
Pour récupérer une chaine d'une boite de dialogue, c'est pas mieux d'utiliser GetDlgItemText?
Voilà ce que j'ai fait:
dans la procédure de la boite de dialogue:
Mais la chaine que je récupère ne contient que le premier caractère de ce qui est entré dans la boite de dialogue. Qu'est ce qui ne vas pas dans ce que j'ai fait?
Merci
BruNews
Messages postés21040Date d'inscriptionjeudi 23 janvier 2003StatutModérateurDernière intervention21 août 2019 25 août 2005 à 21:19
GetDlgItemText va bon aussi, ça évite juste de stocker un HWND si on ne s'en sert que très peu mais dans tous les cas ça appellera GetWindowText en interne.
EndDialog(hDlg, *string3);
free(string3);
tu retournes par EndDialog l'entier à l'offset 0 de la chaine string3, donc le 1er caractère (string3[0]).
Il faut faire le atof() dans la dialog et le stocker ailleurs, EndDialog ne peut retourner qu'un entier 32 bits et rien d'autre.
tophe03
Messages postés327Date d'inscriptionlundi 24 janvier 2005StatutMembreDernière intervention14 avril 2010 25 août 2005 à 21:52
Merci pour ton explication, je comprends mieux pourquoi je n'obtiens que le premier caractère.
Une fois que j'ai utiliser atof dans la boite de dialogue,
tophe03
Messages postés327Date d'inscriptionlundi 24 janvier 2005StatutMembreDernière intervention14 avril 2010 25 août 2005 à 21:55
désolé, une partie de mon dernier message n'est pas passée. c'est la 2ème fois que ça me fait le coup.
Je diasais donc: une fois que j'ai utiliser atof dans la boite de dialogue, où faut-il stocker la valeur obtenue, comment je la récupère?