另外,Windows NT还支援3种画线函式:
这三个函式Windows 98不支援。
在本章的後面我将介绍一些既画线也填入所画图形的封闭区域的函式,这些函式是:
装置内容的五个属性影响著用这些函式所画线的外观:目前画笔的位置(仅用於LineTo、PolylineTo、PolyBezierTo和ArcTo )、画笔、背景方式、背景色和绘图模式。
画一条直线,必须呼叫两个函式。第一个函式指定了线的开始点,第二个函式指定了线的终点:
MoveToEx实际上不会画线,它只是设定了装置内容的「目前位置」属性。然後LineTo函式从目前的位置到它所指定的点画一条直线。目前位置只是用於其他几个GDI函式的开始点。在内定的装置内容中,目前位置最初设定在点(0,0)。如果在呼叫LineTo之前没有设定目前位置,那么它将从显示区域的左上角开始画线。
小历史:
Windows的16位元版本中,用来改变目前位置的函式是MoveTo。该函式只调整三个参数-装置内容代号、x和y座标。函式通过两个16位元数拼成的32位元无正负号长整数传回先前的目前位置。然而,在Windows的32位元版本中,座标是32位元的数值,而C的32位元版本中又没有定义64位元的整数资料型态,因此这种改变意味著MoveTo在其传回值中不再指出先前的目前位置。在实际的程式写作中,由MoveTo传回的值几乎从来不用,因此就需要一个新函式,这就是MoveToEx。
MoveToEx的最後一个参数是指向POINT结构的指标。从该函式传回後,POINT结构的x