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