设置和连接像素
Setting and connecting pixels
我想设置鼠标点击的像素并连接这些像素。我的代码如下
void CChildView::OnLButtonDown(UINT nFlags,CPoint point)
{
CDC* pDC= GetDC();
int x[100],y[100];
POINT Pt[4];
for(int i=0;i<4;i++)
{
SetPixel(NULL,Pt[i].x,Pt[i].y,RGB(0,0,0));
pDC->MoveTo(Pt[i].x,Pt[i].y);
pDC->LineTo(Pt[i+1].x,Pt[i+1].y);
}
}
但除了空白屏幕外,我没有在输出中得到任何东西。请帮助。
创建您需要的变量
在 CChildView class 添加一个存储最后一个点的变量,以及一个存储您当前拥有的点数的变量
CPoint m_lastPoint;
int m_iPointAmount;
在 CChildView 构造函数中初始化变量
m_lastPoint.x = -1;
m_lastPoint.y = -1;
m_iPointAmount = 1;
在 OnLButtonDown 方法中
- 检查是否为第一个点,更新成员变量
- 如果不是第一个点并且你的点数少于4个,将新点与最后一个点连接起来
if (m_lastPoint.x != -1 && m_iPointAmount <5)
{
CDC* pDC= GetDC();
pDC->MoveTo(m_lastPoint.x,m_lastPoint.y);
pDC->LineTo(point.x,point.y);
}
m_lastPoint = point;
m_iPointAmount++
我想设置鼠标点击的像素并连接这些像素。我的代码如下
void CChildView::OnLButtonDown(UINT nFlags,CPoint point)
{
CDC* pDC= GetDC();
int x[100],y[100];
POINT Pt[4];
for(int i=0;i<4;i++)
{
SetPixel(NULL,Pt[i].x,Pt[i].y,RGB(0,0,0));
pDC->MoveTo(Pt[i].x,Pt[i].y);
pDC->LineTo(Pt[i+1].x,Pt[i+1].y);
}
}
但除了空白屏幕外,我没有在输出中得到任何东西。请帮助。
创建您需要的变量
在 CChildView class 添加一个存储最后一个点的变量,以及一个存储您当前拥有的点数的变量
CPoint m_lastPoint;
int m_iPointAmount;
在 CChildView 构造函数中初始化变量
m_lastPoint.x = -1;
m_lastPoint.y = -1;
m_iPointAmount = 1;
在 OnLButtonDown 方法中
- 检查是否为第一个点,更新成员变量
- 如果不是第一个点并且你的点数少于4个,将新点与最后一个点连接起来
if (m_lastPoint.x != -1 && m_iPointAmount <5)
{
CDC* pDC= GetDC();
pDC->MoveTo(m_lastPoint.x,m_lastPoint.y);
pDC->LineTo(point.x,point.y);
}
m_lastPoint = point;
m_iPointAmount++