salut,je fais une application avec visualC++ 6.0 et je voudrais dessine un rectangle grace a CRect, mais celui cu ne s'affiche pas.
est ce que vous saurier comment faire?
merci
salut,je fais une application avec visualC++ 6.0 et je voudrais dessine un rectangle grace a CRect, mais celui cu ne s'affiche pas.
est ce que vous saurier comment faire?
merci
tu as dessiné ou ? tu as raffraichi ? (avec invalidateRect)
en fait, quand je fait un click gauche je cree un rectangle avec le point cliqué . quand je deplace ma souris, je crée un rectangle qui a pour parametre le point clické precedement et le point ou se trouve ma souris et enfin quand je releve le bouton gauche je dessine le rectangle qui a pour parametre le point lorsque j'ai appuyer sur le bouton gauche et le point lorsque je relache le bouton gauche.
je rafraichi bien , mais sa s'affiche pas quand meme
comment traces-tu les lignes ? montre ton code
mon code est le suivant:
dans le construteur de la classe view:
dans la fonction OnLButtonDown:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 pen.CreatePen(PS_SOLID,5,RGB(255,0,0 ));
dans la fonction OnMouseMove:
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 m_select=true; SetCapture(); //On recupere le premier point du rectangle de selection m_premP = point; //On cree le rectangle de selection CRect rect(point, point); //on recupere le contexte de peripherique CDC *pDC = GetDC(); DC->SelectObject(&pen); m_rect = rect; ReleaseDC(pDC); InvalidateRect(m_rect,true);
dans la fonction OnLButtonUp:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 if(m_select) { CRect rect(m_premP, point); rect.NormalizeRect(); CDC *pDC = GetDC(); DC->SelectObject(&pen); m_rect = rect; ReleaseDC(pDC); InvalidateRect(m_rect,true); }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 CDC *pDC = GetDC(); DC->SelectObject(&pen); CRect rect(0,0,0,0); ReleaseDC(pDC); ReleaseCapture(); m_select=false; InvalidateRect(rect,true); CScrollView::OnLButtonUp(nFlags, point);
euh ... je vois pas trop de quoi dessiner là ... manque des drawline ou des moveto ou des choses comme ca ...![]()
Partager