[MFC] Globaliser une variable locale
Bonjour,
j'utilise la librairie graphique GDI+
dans ma classe dérivée de CView, ma fonction OnDraw est comme ça :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
void CMaVue::OnDraw(CDC* pDC) {
CDocument* pDoc = GetDocument();
// TODO: add draw code here
Gdiplus::Graphics graphics(pDC->m_hDC);
Pen pen1(Color(255, 0, 0), 20);
graphics.SetSmoothingMode(SmoothingModeAntiAlias);
graphics.DrawLine(&pen1, 160, 0, 170, 800);
CView::OnDraw(pDC);
} |
Rien que de très classique.
Cependant, je voudrais pouvoir dessiner depuis d'autres fonctions, donc rendre la variable graphics globale dans la classe (désolé si ce n'est pas le terme exact :? )
j'ai essayé un truc du genre
Gdiplus::Graphics* graphics;
dans CMaVue.h
puis graphics=new Gdiplus::Graphics(pDC->m_hDC);
dans CMaVue.cpp
mais ça plante.
Comment faire ça proprement ?
Merci d'avance de votre aide
Philippe