Win32 API中如何画线
题目要求在Win32API程序中画一条线段,从某一位置(x1,y1)画到另一位置(x2,y2),并且使用LineTo函数。为什么我用了都没有显示的呢?麻烦说明下代码添加的...
题目要求在Win32 API程序中画一条线段,从某一位置(x1,y1)画到另一位置(x2,y2),并且使用LineTo函数。为什么我用了都没有显示的呢?
麻烦说明下代码添加的位置,谢谢 展开
麻烦说明下代码添加的位置,谢谢 展开
展开全部
Win32画图函数中有个重要的概念就是画图的目标地点,也就是说你要在什么东西上画,这个东西就是一个窗口。
假如你获得了一个窗口的句柄为hwnd,那么就按下面的方式画:
HDC hdc=::GetDC(hwnd); //如果hwnd是别的进程的窗口也是可以的
::MoveTo(hdc,x1,y1);
::LineTo(hdc,x2,y2);
::ReleaseDC(hdc);
但是以上画的是个临时的图,只要窗口刷新一下或被别的窗口挡住一次就会消失,所以如果要绘个有用的图你就的在窗口的WM_PAINT消息处理过程里调用以上代码。至于如何找到WM_PAINT消息处理过程以及窗口句柄就有太多话了,建议你Baidu搜索下"WM_PAINT" "窗口句柄" "HDC"等关键字
假如你获得了一个窗口的句柄为hwnd,那么就按下面的方式画:
HDC hdc=::GetDC(hwnd); //如果hwnd是别的进程的窗口也是可以的
::MoveTo(hdc,x1,y1);
::LineTo(hdc,x2,y2);
::ReleaseDC(hdc);
但是以上画的是个临时的图,只要窗口刷新一下或被别的窗口挡住一次就会消失,所以如果要绘个有用的图你就的在窗口的WM_PAINT消息处理过程里调用以上代码。至于如何找到WM_PAINT消息处理过程以及窗口句柄就有太多话了,建议你Baidu搜索下"WM_PAINT" "窗口句柄" "HDC"等关键字
展开全部
Win32画图函数中有个重要的概念就是画图的目标地点,也就是说你要在什么东西上画,这个东西就是一个窗口。
假如你获得了一个窗口的句柄为hwnd,那么就按下面的方式画:
HDC hdc=::GetDC(hwnd); //如果hwnd是别的进程的窗口也是可以的
::MoveTo(hdc,x1,y1);
::LineTo(hdc,x2,y2);
::ReleaseDC(hdc);
但是以上画的是个临时的图,只要窗口刷新一下或被别的窗口挡住一次就会消失,所以如果要绘个有用的图你就的在窗口的WM_PAINT消息处理过程里调用以上代码。至于如何找到WM_PAINT消息处理过程以及窗口句柄就有太多话了,建议你Baidu搜索下"WM_PAINT" "窗口句柄" "HDC"等关键字
假如你获得了一个窗口的句柄为hwnd,那么就按下面的方式画:
HDC hdc=::GetDC(hwnd); //如果hwnd是别的进程的窗口也是可以的
::MoveTo(hdc,x1,y1);
::LineTo(hdc,x2,y2);
::ReleaseDC(hdc);
但是以上画的是个临时的图,只要窗口刷新一下或被别的窗口挡住一次就会消失,所以如果要绘个有用的图你就的在窗口的WM_PAINT消息处理过程里调用以上代码。至于如何找到WM_PAINT消息处理过程以及窗口句柄就有太多话了,建议你Baidu搜索下"WM_PAINT" "窗口句柄" "HDC"等关键字
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
pDC->MoveTo(int(x1),int(y1));
pDC->LineTo(int(x2),int(y2));
pDC->LineTo(int(x2),int(y2));
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询