Bonjour à tous,
c'est la première fois que je participe à ce forum ; j'espère que je serai suffisament clair
j'ai déjà développé quelques applications avec les MFC auparavant.
Pour celle-ci, j'utilise la librairie PGL http://www.codeproject.com/miscctrl/pgllib.asp
qui permet d'afficher facilement des courbes dans leurs repères.
CMainFrame est de la classe CFrameWnd
CGavrocheAPP de la classe CWinApp
CPGLGraphView de la classe CView
Pour afficher une courbe, j'ai le code suivant (fourni par l'auteur) et qui fonctionne :
GenererGraphiqueXFY() sert à entrer les valeurs (x,y) dans l'objet pGraph et la suite à afficher la courbe.
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 void CMainFrame::AfficherCourbeXFY() { // TODO: Add your command handler code here // setting graph CPGLGraph* pGraph = ((CGavrocheApp*)AfxGetApp())->GenererGraphiqueXFY(); if (pGraph) { pGraph->ZoomAll(TRUE); ((CPGLGraphView*)GetActiveView())->SetGraph(pGraph ); GetActiveView()->InvalidateRect(NULL,FALSE); } //if }//proc
MON PROBLEME :
lorsque CGavrocheApp intercepte une commande du menu,
je veux alors afficher la courbe, donc lancer la procedure
AfficherCourbeXFY()
(donc que CGavrocheApp lance une procedure de CMainFrame, d'où mon titre)
Et là, je ne sais plus faire ....
en faisant
(désolé, c'est peut-être une horreur d'écrire ça)
Code : Sélectionner tout - Visualiser dans une fenêtre à part CMainFrame::AfficherCourbeXFY();
j'ai une erreur C2352
"illegal call of non-static member function"
Comment m'en sortir ?
Merci d'avance de bien vouloir vous intéresser à mon problème
Philippe
[a l'avenir utilise la balise de code ,Merci Farscape]
Partager