Consever les données en changean de dialogbox

[Résolu]
Signaler
Messages postés
1154
Date d'inscription
mardi 9 septembre 2003
Statut
Membre
Dernière intervention
15 août 2009
-
Messages postés
1154
Date d'inscription
mardi 9 septembre 2003
Statut
Membre
Dernière intervention
15 août 2009
-
Hello,

Ma xème question du jour!

J'ai un dialogbox qui intègre des données. A partir de ces données, des calculs sont faits. Je veux avoir deux dialogbox possibles: avec les détails des calculs ou sans.

J'ai donc fait la chose suivante:

case IDC_AVEC_CALCUL:
if(SendMessage(GetDlgItem(hWndconf,IDC_AVEC_CALCUL),BM_GETCHECK,0,0) == BST_CHECKED){
EndDialog(hWndconf,0);
return (int)DialogBox(hInst,MAKEINTRESOURCE(IDD_PROTCONF),NULL,ConfDlgProc); }
break;
case IDC_SANS_CALCUL:
if(SendMessage(GetDlgItem(hWndconf,IDC_SANS_CALCUL),BM_GETCHECK,0,0) == BST_CHECKED){
EndDialog(hWndconf,0);
return (int)DialogBox(hInst,MAKEINTRESOURCE(IDD_PROTCONF1),NULL,ConfDlgProc); }
break;

C'est mignon tout plein, mais le gag, c'est que je re-initialise à chaque fois la boîte de dialogue! Comment garder les GetDlgItemText et touti ???

5 réponses

Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
1- récupérer le handle du contrôlle : hCtl = GetDlgItem(hDlg, IDC_...);
2- Afficher/maquer ShowWindow(hCtl, SW_HIDE/SW_SHOW);
Messages postés
2070
Date d'inscription
mardi 22 avril 2003
Statut
Membre
Dernière intervention
3 juillet 2006
8
rajoute un bouton genre [minimser/maximiser] l'affichage ou [<</>>].

Lors de l'appui sur ce bouton, masque ou affiche les contrôles et redimensionne la boîte de dialogue (c'est un peu lourd mais si c'est bien fait c'est très maintenable avec du genre un tableau des Ids des contrôles à masquer/afficher et un rectangle invisible qui te donne la taille minimisée). Ne pas oublier de donner un Id aux Static.
Messages postés
1154
Date d'inscription
mardi 9 septembre 2003
Statut
Membre
Dernière intervention
15 août 2009
17
Hello!

J'ai bien pensé à ça, mais je n'ai pas trouvé comment rendre visible ou invisible un élément!

Comment faire pour avoir quelque chose du genre: set(un)visible(IDC_AVEC_CALCUL) sachant que je suis en c... ?
Messages postés
1154
Date d'inscription
mardi 9 septembre 2003
Statut
Membre
Dernière intervention
15 août 2009
17
Merci pour ta réponse... mais c'est pas ce que je voulais ;o)

Je m'explique mieux: j'ai 2 fenêtres à l'identique, à ceci prêt que dans l'une mon editBox n'est pas visible alors qu'elle l'est dans l'autre. Je n'ai pas besoin de savoir comment la rendre visible, j'ai besoin de savoir comment faire un test pour savoir dans quelle fenêtre je suis! Un truc genre "if(editbox == VISIBLE) then Fenetre1 else Fenetre2"
Messages postés
1154
Date d'inscription
mardi 9 septembre 2003
Statut
Membre
Dernière intervention
15 août 2009
17
euh... attends, j'suis à côté de la plaque! J'ai mélangé deux questions différentes! Tiens pas compte de ma remarque...

sküüz!