IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MFC Discussion :

[MFC] refresh ecran


Sujet :

MFC

  1. #1
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut [MFC] refresh ecran
    Alors vais vous expliquer mon souci.
    J'ai 2 dialogue, le principal qui s'ouvre au demarrage et le second qui s'ouvre grace à un bouton.

    Le premier contient une comboBox et une msFlexGrid qui se remplisse dans le OnInitDialog().
    Le but de ce dialogue est de pouvoir selectionner une ligne du flexGrid et de pouvoir afficher les detail de la ligne dans le second dialogue.
    Celui-ci permet uniquement de supprimer ou pas cette ligne.

    Dans le mesure ou la suppréssion est validé je voudrais que ma FlexGrid soit reactualisé c'est à dire se rafraichir sans l'enregistrement supprimé.

    voici le oninitDialog de mon dialogue principal :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
     
    BOOL CParamTerminal::OnInitDialog()
    {
    	CDialog::OnInitDialog();
     
    ADOSelect mySel;
     
     
    //Ouverture du recordset
    if (!mySel.Open(myConn->ADOConn, requete))
     
     
    {
    //	cout << mySel.GetError() << endl; // Affichage de l'erreur
    	AfxMessageBox("la requete a merdé");
    }
     else 
    {
    AfxMessageBox("requete executée");
    			int iRec = 0;
    			CString sTemp;
     
    			iRec = 2;
    			m_FlexGrid.SetCols(mySel.GetColCount() + 1);
    				m_FlexGrid.SetColWidth(0, 200);
    				m_FlexGrid.SetColWidth(1, 10);
    			for (int iCol = 1; iCol < mySel.GetColCount(); iCol++) 
    			{
    				m_FlexGrid.SetRow(0);
    				m_FlexGrid.SetCol(iCol+1);
    				m_FlexGrid.SetText(mySel.GetFieldName(iCol));
    				m_FlexGrid.SetColWidth(iCol +1, 1500);
    			}
    			while (mySel.Fetch())
    			{
    				CString sField;
    				m_FlexGrid.SetRows(iRec);
    				m_FlexGrid.SetRow(iRec-1);
    				m_FlexGrid.SetRow(m_FlexGrid.GetRow());
    				m_FlexGrid.SetCol(0);
    				sTemp.Format("%d", iRec-1);
    				m_FlexGrid.SetText(sTemp);
     
    				for (int iCol = 0; iCol < mySel.GetColCount(); iCol++)
    				{
    					m_FlexGrid.SetCol(iCol + 1);
    					mySel.GetFieldVal(iCol, sField);
    					m_FlexGrid.SetText(sField);
    				}
    				iRec++;
     
    			}
    			mySel.Close(); 
    		}
     
    UpdateData(false);
     
    	return (true);
    }

    la le code du bouton qui permet d'ouvrir le second dialogue
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    void CParamTerminal::OnBUTTONsupprimer() 
    {
    int d1 = m_FlexGrid.GetRowSel();
    CString a,b;
    a.Format("%x",d1);
    AfxMessageBox(a);
    b = m_FlexGrid.GetTextMatrix(d1, 1);
    //AfxMessageBox(m_FlexGrid.GetTextMatrix(d1, 2));
    AfxMessageBox(b);
     
    	// TODO: Add your control notification handler code here
    	suppr_carte dlg(b,*myConn);
     
    	if (dlg.DoModal()==IDOK)
    	{
     
    	}
    }
    Ensuite j'arrive bien à supprimer la ligne dan la BDD et maintenan en fermant la seconde boite de dialogue je souhaiterai rafraichir mon ecran.


    Voila j'espere avoir été claire en tout cas merci d'avance pour votre aide.

  2. #2
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    hello

    j'avoue que j'ai pas trop regardé le code, mais ça ça donne quoi ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
       if (dlg.DoModal()==IDOK)
       {
           UpdateData(FALSE);
       }
    :

  3. #3
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    ben j'ai essayé et ca me sort 2 erreurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    E:\test\maquette_old\suppr_carte.cpp(134) : error C2065: 'dlg' : undeclared identifier
    E:\test\maquette_old\suppr_carte.cpp(134) : error C2228: left of '.DoModal' must have class/struct/union type
    Alors pour y remedier j'ai fait ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    CParamTerminal dlg;
    if (dlg.DoModal()==IDOK)
       {
           UpdateData(FALSE);
       }
     
    }
    CParamTerminal correspond au dialogue principale

    Mais ca ne fonctionne pas correctement parce que au lieu de reprendre le dialgue principale il men affiche un nouveau donc je dispose de 2 dialgues principales à lecran

  4. #4
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    sinon j'ai pensé à créer une fonction qui s'occupe uniquement de remplir le msFlexGrid par exemple remplir_grid()

    et c'a donnerai ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    BOOL CParamTerminal::OnInitDialog()
    {
    	CDialog::OnInitDialog();
     
    remplir_grid();
    UpdateData(false);
    return(true);
    }

    Ensuite dans le second dialogue faire appel uniquement à cette fonction

    est-ce possible si oui comment je dois m'y prendre ???

  5. #5
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    Citation Envoyé par moulefrite
    ben j'ai essayé et ca me sort 2 erreurs :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    E:\test\maquette_old\suppr_carte.cpp(134) : error C2065: 'dlg' : undeclared identifier
    E:\test\maquette_old\suppr_carte.cpp(134) : error C2228: left of '.DoModal' must have class/struct/union type
    Alors pour y remedier j'ai fait ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    CParamTerminal dlg;
    if (dlg.DoModal()==IDOK)
       {
           UpdateData(FALSE);
       }
     
    }
    CParamTerminal correspond au dialogue principale

    Mais ca ne fonctionne pas correctement parce que au lieu de reprendre le dialgue principale il men affiche un nouveau donc je dispose de 2 dialgues principales à lecran
    normal dans ta boite CParamTerminal tu instancies et affiche un autre CParamTerminal ...

    si suppr_carte est la classe dialog que tu veux afficher alors c'est une variable de ce type qu'il faut instancier.

  6. #6
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    pas tres bien compris ce que tu veus dire desolé :

    CPAramTerminal c'est mon dialogue principal ou se situe le flexgrid et le bouton d'ouverture du second dialogue

    Suppr_carte c'est mon second dialog

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    Schéma de fonctionnement : 
     
    CParamTerminal::oninitdialog()
    {
    remplissage flexgrid
    }
     
    CParamTerminal::butonChoix()
    {
    ouverture de Suppr_carte()
    }
    Une fois le dialogue suppr_carte ouvert :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    suppr_carte::buton_valider_suppr()
    {
    delete * from ma table;
    }
    Voila je voudrais que le clik bouton_valider_suppr()
    me mette a jour le flexgrid de mon dialogue principal

    Voila bigboom je sais sui pas tres doué mai bon fai ce que je peu

    En tout cas merci pour tes reponses.

  7. #7
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    quand tu instancies ton suppr_carte, passe au constructeur un pointeur sur ta dialogue proncipale ou sur le flexgrid. comme ça tu pourras y avoir accès depuis la 2è dialogue

  8. #8
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    voila j'ai fai ce que tu m'a di bigboom

    ca donne ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    class suppr_carte : public CDialog
    {
    // Construction
    public:
    	suppr_carte(CString carte, ADOConnect &myConn,CWnd* pParent = NULL);   // standard constructor
    ADOConnect *myConn;
    CParamTerminal *terminal;
    CString carte2;
    BOOL OnInitDialog(); 
    }
    j'ai donc bien crée dan mon second dialogue un pointeur sur la classe principale CParamTerminal

    Ensuite quand je fais le traitement de supprésion je le valide sur le bouton
    ca donne ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    void suppr_carte::OnButtonOk() 
    {
     
     
    ADOSelect delete_carte;
    int i=0;
     
    if (!delete_carte.Open(myConn->ADOConn, "delete from carte where code_carte = '" + carte2 + "'"))
     
     
    {
    cout << delete_carte.GetError() << endl; // Affichage de l'erreur
    AfxMessageBox("la suppréssion a echouée");
    }
    else
    {
    AfxMessageBox("le profil  " + m_profilCarte + "  a bien été supprimé");
    }	
     
    delete_carte.Close();
     
    suppr_carte::OnOK();
     
    terminal->maj();
     
    }
    la methode maj() fait uniquement un refresh de ma flexgrid
    Lorsque je lance mon appli la suppréssion se fai corectement et au moment du refresh ca plante

    je sais pas trop d'ou ca peu venir

    help please[/code]

  9. #9
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    en faites j'ai reflechi et il fau que je mette en parametre d'entrée de ma seconde dialogue un pointeur sur le dialogue principale.

    ca donne ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    void CParamTerminal::OnBUTTONsupprimer() 
    {
    int d1 = m_FlexGrid.GetRowSel();
    CString a,b;
    a.Format("%x",d1);
     
    b = m_FlexGrid.GetTextMatrix(d1, 1);
     
     
    suppr_carte dlg(&CParamTerminal,b,*myConn);
     
    	if (dlg.DoModal()==IDOK)
    	{
     
    	}
    }
    cependant je pense pas que le pointeur sur le dialogue principale s'instancie de cetet facon
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    suppr_carte dlg(&CParamTerminal,b,*myConn);
    voila jespere que vous arrivez a m'aider parce que moi je patauge

  10. #10
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    suppr_carte(CString carte, ADOConnect &myConn,CWnd* pParent = NULL);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    suppr_carte dlg(&CParamTerminal,b,*myConn);
    tu as changé l'ordre des paramètres entre temps ?

    remplace "&CParamTerminal" par "this" ...

  11. #11
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    ah ou idesolé jai pa afficher la nouvelle declaration :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    	suppr_carte(CParamTerminal &terminal, CString carte, ADOConnect &myConn,CWnd* pParent = NULL);   // standard constructor
    ADOConnect *myConn;
    CParamTerminal *terminal;
    en faites je vois now ce qu'il faut que je rajoute en faites c'est le nom de l'OBJET dialogue principale

  12. #12
    Rédacteur
    Avatar de bigboomshakala
    Homme Profil pro
    Consultant Web .NET
    Inscrit en
    Avril 2004
    Messages
    2 077
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Consultant Web .NET
    Secteur : Finance

    Informations forums :
    Inscription : Avril 2004
    Messages : 2 077
    Points : 2 757
    Points
    2 757

  13. #13
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    thx bigboom j'ai rajouté le this

    Maintenant nouveau prob :
    je fais ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
     
    void suppr_carte::OnButtonOk() 
    {
     
     
    ADOSelect delete_carte;
    int i=0;
     
    if (!delete_carte.Open(myConn->ADOConn, "delete from carte where code_carte = '" + carte2 + "'"))
     
     
    {
    cout << delete_carte.GetError() << endl; // Affichage de l'erreur
    AfxMessageBox("la suppréssion a echouée");
    }
    else
    {
    AfxMessageBox("le profil  " + m_profilCarte + "  a bien été supprimé");
    }	
     
    delete_carte.Close();
     
    suppr_carte::OnOK();
     
    terminal->maj();
     
    }
    Je fais appel a ma fonction maj() ca plante la voici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    void CParamTerminal::maj()
    {
     
    	//Définitin d'un object ADOSelect pour exécuter une requête
    ADOSelect mySel;
     
     
    //Ouverture du recordset
    if (!mySel.Open(myConn->ADOConn, requete))
     
     
    {
    //	cout << mySel.GetError() << endl; // Affichage de l'erreur
    	AfxMessageBox("la requete a merdé");
    }
     else 
    {
    AfxMessageBox("requete executée");
    			int iRec = 0;
    			CString sTemp;
     
    			iRec = 2;
    			m_FlexGrid.SetCols(mySel.GetColCount() + 1);
    				m_FlexGrid.SetColWidth(0, 200);
    				m_FlexGrid.SetColWidth(1, 10);
    			for (int iCol = 1; iCol < mySel.GetColCount(); iCol++) 
    			{
    				m_FlexGrid.SetRow(0);
    				m_FlexGrid.SetCol(iCol+1);
    				m_FlexGrid.SetText(mySel.GetFieldName(iCol));
    				m_FlexGrid.SetColWidth(iCol +1, 1500);
    			}
    			while (mySel.Fetch())
    			{
    				CString sField;
    				m_FlexGrid.SetRows(iRec);
    				m_FlexGrid.SetRow(iRec-1);
    				m_FlexGrid.SetRow(m_FlexGrid.GetRow());
    				m_FlexGrid.SetCol(0);
    				sTemp.Format("%d", iRec-1);
    				m_FlexGrid.SetText(sTemp);
     
    				for (int iCol = 0; iCol < mySel.GetColCount(); iCol++)
    				{
    					m_FlexGrid.SetCol(iCol + 1);
    					mySel.GetFieldVal(iCol, sField);
    					m_FlexGrid.SetText(sField);
    				}
    				iRec++;
     
    			}
    			mySel.Close(); 
    		}
     
     AfxMessageBox("hello");
    UpdateData(true);
    }

    alors le but de cette methode maj() est uniquement de reafficher le flexGrid maheureusement pour moi ca plante

    cependant quand je reduit cette fonction à ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    void CParamTerminal::maj()
    {
    AfxMessageBox("hello")
    }
    Ca semble fonctionner c'est bizarre c a l'air de provenir du updateData() et du flexGrid

    Je compren vraiment pas d'ou viens le probleme y a peu etre une methode interne au MFC à parametrer

  14. #14
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    je comprend pas du tout pourtant quand j'execute la methode maj() sur le dialogue principale ca fonctionne nickel mai quand je l'execute depuis le second dialogue ca plante

    je vois vraiment pas d'ou ca peu provenir

  15. #15
    Débutant
    Homme Profil pro
    Chef de projet NTIC
    Inscrit en
    Janvier 2004
    Messages
    452
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet NTIC
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2004
    Messages : 452
    Points : 324
    Points
    324
    Par défaut
    Bon finalement j'ai reussi à le faire fonctionner grace à un exemple que j'ai trouvé sur le net
    alors finalement y à pas besoin de créer un pointeur sur le dialogue principale en faites il fallais juste mette dans le .doModal() l'execution de la fonction maj().


    voila le code juste pour ceux qui rencontrerais le meme probleme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
     
    void CParamTerminal::OnBUTTONsupprimer() 
    {
    int d1 = m_FlexGrid.GetRowSel();
    CString a,b;
    a.Format("%x",d1);
     
    b = m_FlexGrid.GetTextMatrix(d1, 1);
     
     
    suppr_carte dlg(*this,b,*myConn);
     
    	if (dlg.DoModal()==IDOK)
    	{
    		maj();
    	}
    }
    Voila en tout cas merci a vous tous pour votre aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [FORMULAIRES] Refresh Ecran
    Par Jordmund dans le forum VBA Access
    Réponses: 2
    Dernier message: 05/09/2007, 11h35
  2. [MFC] Rafraichissement Ecran
    Par r3my_ dans le forum MFC
    Réponses: 2
    Dernier message: 26/04/2007, 20h09
  3. [MFC]CWebBrowser, detection fin refresh
    Par gloubi dans le forum MFC
    Réponses: 3
    Dernier message: 24/07/2006, 16h40
  4. Réponses: 10
    Dernier message: 27/04/2006, 20h58
  5. utiliser les tag [MFC] [Win32] [.NET] [C++/CLI]
    Par hiko-seijuro dans le forum Visual C++
    Réponses: 8
    Dernier message: 08/06/2005, 15h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo