當前位置:首頁 » 操作系統 » mfc畫圖源碼

mfc畫圖源碼

發布時間: 2025-01-01 11:50:54

❶ 求一個MFC畫圖源碼,就是用MFC編寫的 謝謝了 謝謝各位大GG 謝謝哦 [email protected]

重新定義一個類,用這個類來保存畫圖的類型,起點,終點:
class CGraph
{
public:
UINT m_dwsytle;
CPoint m_dnpt;
CPoint m_uppt;
CGraph();
CGraph(UINT style,CPoint dnpt,CPoint uppt);
virtual ~CGraph();
};
CGraph::CGraph(UINT style,CPoint dnpt,CPoint uppt)
{
m_dwsytle=style;
m_dnpt=dnpt;
m_uppt=uppt;
}
為VIEW類增加:
CPtrArray m_ptrArray;
void CGraphicView::OnLButtonUp(UINT nFlags, CPoint point)中的代碼增加下面代碼:
CGraph *pgraph=new CGraph(m_dwstyle,m_dnpt,point);
m_ptrArray.Add(pgraph);

void CGraphicView::OnDraw(CDC* pDC)
{
CGraphicDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
CClientDC dc(this);
CBrush *pBrush=(CBrush*)dc.SelectStockObject(NULL_BRUSH);
int count=m_ptrArray.GetSize();
for (int i=0;i<count;i++)
{
switch (((CGraph*)m_ptrArray.GetAt(i))->m_dwsytle)
{
case 1:
dc.SetPixel(((CGraph*)m_ptrArray.GetAt(i))->m_dnpt,RGB(255,0,0));
break;
case 2:
dc.MoveTo(((CGraph*)m_ptrArray.GetAt(i))->m_dnpt);
dc.LineTo(((CGraph*)m_ptrArray.GetAt(i))->m_uppt);
break;
case 3:
dc.Rectangle(CRect(((CGraph*)m_ptrArray.GetAt(i))->m_dnpt,
((CGraph*)m_ptrArray.GetAt(i))->m_uppt));
break;
case 4:
dc.Ellipse(CRect(((CGraph*)m_ptrArray.GetAt(i))->m_dnpt,
((CGraph*)m_ptrArray.GetAt(i))->m_uppt));
break;
default:
break;
}
}
dc.SelectObject(pBrush);
// TODO: add draw code for native data here
}
就可以了。

❷ VC++ 用MFC點畫圓為什麼只能畫一半 如圖,用的MFC自帶的源代碼,在後面加的一部分代碼

  1. 圓心在(500,500),你的y計算,只計算了下半圓(圓心以下)的每個點,沒有計算上半圓(圓心之上)。上半圓的y坐標 y'=2b-y (y是已有的下半圓的點坐標)

  2. 畫圓不是用「畫點」,而是畫點與點之間的連線(畫線)

  3. 畫圓有專用的畫圓函數,不需要自己一點一點的畫。

❸ 急求用MFC編寫的畫圖板源代碼

以下這個源代碼就是用MFC寫的,可以模擬Windows的畫圖程序。
以後可以多去codeproject這個開源網站找找。
http://www.codeproject.com/Articles/8494/DrawTools

熱點內容
雲南電網伺服器雲伺服器 發布:2025-08-30 08:50:09 瀏覽:106
更新數據sql語句 發布:2025-08-30 08:35:10 瀏覽:974
cmvc上傳文件 發布:2025-08-30 08:04:25 瀏覽:852
python中類的繼承 發布:2025-08-30 08:00:03 瀏覽:81
編譯系統是軟體嗎 發布:2025-08-30 07:58:37 瀏覽:213
編程es 發布:2025-08-30 07:57:43 瀏覽:369
ftp登陸windows 發布:2025-08-30 07:36:32 瀏覽:717
word腳本錯誤 發布:2025-08-30 07:34:11 瀏覽:374
php獲取協議 發布:2025-08-30 07:33:16 瀏覽:751
編譯時出現 發布:2025-08-30 07:23:58 瀏覽:35