Affichage de données traités

rachid1245 Messages postés 16 Date d'inscription lundi 11 septembre 2006 Statut Membre Dernière intervention 20 avril 2011 - 7 nov. 2006 à 16:32
rachid1245 Messages postés 16 Date d'inscription lundi 11 septembre 2006 Statut Membre Dernière intervention 20 avril 2011 - 8 nov. 2006 à 16:15
Bonjour à tous
voilà , je crée une boîte de dialogue par DialogBox comme fenêtre enfant d'une fenêtre principale
voici le code à peu près:
fenêtre principale
hWnd = CreateWindowEx(0, ClsName,
 WndName,WS_OVERLAPPEDWINDOW,<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

                         440,
50,
940,
900,
NULL,
NULL,
 hInstance,
NULL);
à l'appui d'une d'une commande du menu de cette fenêtre principale je crée
la boîte de dialogue:
dans le WM_CREATE de la feêtre principale

DialogBox(hInst, MAKEINTRESOURCE(IDD_ASSURANCE_TEMPORAIRE), hWnd, (DLGPROC)DlgTemporaireProc);
cette boîte de dialogue comporte plusieurs contrôles sur lesquels je vais récupérer des informations
à l'appui d'un certain boutton de la boîte de dialogue et après traitement traitement des informations récupérées de la boîte je voudrai afficher un certain nombre de résultats sur la fenêtre principale sans fermer la boîte de dialogue
alors je procède ainsi:
dans la procédure de la boîte de dialogue:
RECT rc;
GetclientRc(hWnd, &rc);
hWndAffiche =CreateWindowEx(0, "Edit", "", WS_CHILD | WS_VISIBLE, rc.left, rc.top, rc.right, rc.bottom, hWnd, NULL, hInst, NULL);

SetWindowText(hWndAffiche, "Les résultats");

Mais rien ne s'affiche. dois je fermer la fenêtre de dialogue avant l'affichage ou quel est le problème
Merçi d'avance pour l'assistance

2 réponses

rachid1245 Messages postés 16 Date d'inscription lundi 11 septembre 2006 Statut Membre Dernière intervention 20 avril 2011
8 nov. 2006 à 12:00
Bonjour à tous
voilà , je crée une boîte de dialogue par DialogBox comme fenêtre enfant d'une fenêtre principale
voici le code à peu près:
fenêtre principale
hWnd = CreateWindowEx(0, ClsName,
 WndName,WS_OVERLAPPEDWINDOW,<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

                         440,
50,
940,
900,
NULL,
NULL,
 hInstance,
NULL);
à l'appui d'une d'une commande du menu de cette fenêtre principale je crée
la boîte de dialogue:
dans le WM_CREATE de la feêtre principale

DialogBox(hInst, MAKEINTRESOURCE(IDD_ASSURANCE_TEMPORAIRE), hWnd, (DLGPROC)DlgTemporaireProc);
cette boîte de dialogue comporte plusieurs contrôles sur lesquels je vais récupérer des informations
à l'appui d'un certain boutton de la boîte de dialogue et après traitement traitement des informations récupérées de la boîte je voudrai afficher un certain nombre de résultats sur la fenêtre principale sans fermer la boîte de dialogue
alors je procède ainsi:
dans la procédure de la boîte de dialogue:
RECT rc;
GetclientRc(hWnd, &rc);
hWndAffiche =CreateWindowEx(0, "Edit", "", WS_CHILD | WS_VISIBLE, rc.left, rc.top, rc.right, rc.bottom, hWnd, NULL, hInst, NULL);

sprintf(resultats, "age : %d    Prime d'assurance  %f etc....", age, prime);
SetWindowText(hWndAffiche, "resultats");

Mais rien ne s'affiche. dois je fermer la fenêtre de dialogue avant l'affichage ou quel est le problème
Merçi d'avance pour l'assistance
0
rachid1245 Messages postés 16 Date d'inscription lundi 11 septembre 2006 Statut Membre Dernière intervention 20 avril 2011
8 nov. 2006 à 16:15
Bonjour à tous en fait le message précèdent est une précision de la question posée
Maintenant que j'ai pu me rendre compte moi-même de l'erreur
je peux donner la solution pour ceux que ca intéresse:
quand j'ai créé la fenêtre d'affichage comme suit
GetclientRc(hWnd, &rc);
hWndAffiche =CreateWindowEx(0, "Edit", "", WS_CHILD | WS_VISIBLE, rc.left, rc.top, rc.right, rc.bottom, hWnd, NULL, hInst, NULL);<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /??>

j'ai tout simplement oublié de spécifier un identifiant du contrôle Edit par exemple
au lieu de ce qui précède
GetclientRc(hWnd, &rc);
hWndAffiche =CreateWindowEx(0, "Edit", "", WS_CHILD | WS_VISIBLE, rc.left, rc.top, rc.right, rc.bottom, hWnd, (HMENU) IDC_CONTROLE_EDIT, hInst, NULL);

en définissant IDC_CONTROLE_EDIT dans un fichier d'entête *.h
après tout fonctionne correctement
0
Rejoignez-nous