CreatePolygonRgn 可以创建一个由一系列点围成的区域 Rgn。
反过来,已知这个 Rgn 怎样才能得到这一系列点的坐标呢?
反过来,已知这个 Rgn 怎样才能得到这一系列点的坐标呢?
解决方案 »
- 关于dbchart
- 我这样做为何不行?
- 告急!!在Delphi中如何关闭已打开的ms_dos
- 用StoredProc的时候,它找我麻烦,大哥们帮我摆平啊!!!
- 如何控制左右声道(非左右音箱)???
- =======问一个很古怪的问题=========
- 请问怎样调出word文档?
- Delphi中如何将xml文件转换为二进制流用于md5计算,计算结果为16字节2进制数据
- Delphi的哥们们,你们在哪里呀?让我找的好苦啊!!!!!!!!!!!!!!!!
- 我改了别人的控件源码,要如何进行编译,才能用?
- 求delphi6 下载地址,在线等待!!!!!!!!!!!!!!!
- 关于读取cookie的问题,50分相送
Rgn : HRGN;
RgnSize : Integer;
RgnData : pRGNDATA;
begin
.....
RgnSize :=GetRegionData( Rgn, 0, nil );
GetMem( RgnData, RgnSize );
GetRegionData( Rgn, RgnSize, RgnData );
end;
你可以自己试试,大小和数据都有了,得到RegionData
用CreatePolygonRgn创建一个多边形区域,需要的是顶点,例如5边形只要5个点
而GetRegionData是将一个Rgn的区域划分为很多个矩形区域,可以得到每个矩形区域的顶点。
实际上用GetRegionData取CreatePolygonRgn创建的数据,能得到很多个围成这个区域的点,
而如果是取用CreateRectRgn创建的Rgn,则刚好得到Rect的4个顶点