转贴:Windows API一日一练(31)MoveToEx和LineTo函数

来源:互联网 发布:知乎老总 编辑:程序博客网 时间:2024/06/06 15:39

现在的世界流行图形界面,而不是文字,因此在软件开发里,肯定需要画图的,比如简单地画线,画一些比较特别的图形。比如让你画一个走动的时钟,就需要不断地画秒针、分针等等。MoveToEx是用来移动当前画笔的位置,LineTo是用来画直线的函数,其实在计算机图形里的直线显示是使用光栅图形学里的原理。

函数MoveToEx和LineTo声明如下:
WINGDIAPI BOOL WINAPI MoveToEx( __in HDC hdc, __in int x, __in int y, __out_opt LPPOINT lppt);
hdc是当前设备的句柄。
x是X轴的位置,水平方向,一般原点是在屏幕左上角的位置。
y是Y轴的位置,垂直方向。
lppt是移动前的坐标位置。

WINGDIAPI BOOL WINAPI LineTo( __in HDC hdc, __in int x, __in int y);
hdc是当前设备的句柄。
x是X轴的位置,水平方向,一般原点是在屏幕左上角的位置。
y是Y轴的位置,垂直方向。

调用这个函数的例子如下:
#001 //
#002 //界面显示输出.
#003 //
#004 //蔡军生 2007/09/08 QQ:9073204 深圳
#005 //
#006 void CCaiWinMsg::OnDraw(HDC hDC)
#007 {
#008  //移到指定位置.
#009  POINT ptLeftTop;
#010  ptLeftTop.x = 10;
#011  ptLeftTop.y = 10;
#012  MoveToEx(hDC,ptLeftTop.x,ptLeftTop.y,NULL);
#013
#014  //从(10,10)到(100,100)画一条直线.
#015  ptLeftTop.x = 100;
#016  ptLeftTop.y = 100;
#017  LineTo(hDC,ptLeftTop.x,ptLeftTop.y);
#018 
#019 }

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/li_guotao/archive/2009/01/09/3741039.aspx