在MFC中,可以使用CDC類的LineTo()函數(shù)來畫線。以下是一個示例代碼:
class CMyClass
{
public:
// ...
CPoint m_ptStart; // 起始點(diǎn)坐標(biāo)
CPoint m_ptEnd; // 終點(diǎn)坐標(biāo)
void DrawLine(CDC* pDC); // 畫線函數(shù)聲明
};
void CMyClass::DrawLine(CDC* pDC)
{
CPen pen(PS_SOLID, 1, RGB(0, 0, 0)); // 創(chuàng)建一個黑色的畫筆
CPen* pOldPen = pDC->SelectObject(&pen); // 選擇畫筆
pDC->MoveTo(m_ptStart); // 將畫筆移動到起始點(diǎn)
pDC->LineTo(m_ptEnd); // 從起始點(diǎn)畫線到終點(diǎn)
pDC->SelectObject(pOldPen); // 恢復(fù)原來的畫筆
}
void CMyView::OnDraw(CDC* pDC)
{
CMyDoc* pDoc = GetDocument();
ASSERT_VALID(pDoc);
if (!pDoc)
return;
// TODO: 在此處為本機(jī)數(shù)據(jù)繪制代碼添加繪制代碼
CMyClass myClass;
// 設(shè)置起始點(diǎn)和終點(diǎn)坐標(biāo)
myClass.m_ptStart = CPoint(50, 50);
myClass.m_ptEnd = CPoint(200, 200);
myClass.DrawLine(pDC);
}
這樣,在自建類列表中,就能夠畫出一個起始點(diǎn)為(50, 50),終點(diǎn)為(200, 200)的直線了。