设为首页 加入收藏

TOP

图形基础(七十七)
2010-12-30 21:10:52 】 浏览:57697
Tags:图形 基础
h (
RGB (rand () % 256, rand () % 256, rand () % 256)) ;
hdc = GetDC (hwnd) ;
FillRect (hdc, &rect, hBrush) ;
ReleaseDC (hwnd, hdc) ;
DeleteObject (hBrush) ;
}

这个程式在现在的电脑上执行得非常快,看起来都不像是一系列随机矩形了。程式使用我在上面讨论过的SetRect和FillRect函式,根据由C的rand函式得到的乱数决定矩形座标和实心画刷的色彩。我将在第二十章中提供这个程式的多执行绪版本。

建立和绘制剪裁区域
 

剪裁区域是对显示器上一个范围的描述,这个范围是矩形、多边形和椭圆的组合。剪裁区域可以用於绘制和剪裁,通过将剪裁区域选进装置内容,就可以用剪裁区域来进行剪裁(就是说,将可以绘图的范围限制为显示区域的一部分)。与画笔、画刷和点阵图一样,剪裁区域是GDI物件,您应该呼叫DeleteObject来删除您所建立的剪裁区域。

当您建立一个剪裁区域时,Windows传回一个该剪裁区域的代号,型态为HRGN。最简单的剪裁区域是矩形,有两种建立矩形的方法:

或者

您也可以建立椭圆剪裁区域:

或者

CreateRoundRectRgn建立圆角的矩形剪裁区域。

建立多边形剪裁区域的函式类似於Polygon函式:

point参数是一个POINT型态的结构阵列,iCount是点的数目,iPolyFillMode是ALTERNATE或者WINDING。您还可以用CreatePolyPolygonRgn来建立多个多边形剪裁区域。

那么,您会问,剪裁区域究竟有什么特别之处?下面这个函式才真正显示出了剪裁区域的作用:

首页 上一页 74 75 76 77 78 79 80 下一页 尾页 77/83/83
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇键盘 下一篇输出文字

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目