在VB6中将内容绘制到图片框的各种方法有哪些?每种方法的优点是什么?

时间:2012-07-03 19:55:11

标签: vb6 drawing picturebox

我知道两种方式:

  1. 使用.line,.circle等方法
  2. 使用bitblt
  3. PaintPicture(从未使用过;在google上找到它)
  4. 还有其他人吗?

    使用某个系统优于另一个系统有什么好处? (速度,抗锯齿等)

1 个答案:

答案 0 :(得分:4)

Line和Circle用于矢量图形。线条绘制线条,矩形和正方形。圆圈绘制椭圆和圆圈。您可以控制是否概述或填充这些方法,线宽和前景是背景颜色。

BitBlt是一个Win32 API调用(不是内置的VB功能),它允许您将位图写入设备上下文(PictureBox具有)。有许多不同的模式允许您将要绘制的背景的像素与图形的像素进行交互。

PaintPicture()方法本质上是一个围绕BitBlt的COM包装器,位图句柄被Picture对象替换。

还有PSet,它只是画一个点是屏幕上的指定位置。我想你也可以包括Print,它允许你绘制文本(可能包含图形字体)。

如果你转到Win32 API,还有许多其他图形函数可用于绘制其他形状,如弧形,多边形和贝塞尔曲线。但是,它们通常比内置的VB方法更难使用。

至于其他人的优势,基本上是:

  • VB功能与Win32 API功能:易用性与功耗
  • 矢量图形与位图图形:更灵活,但需要更多编程而不是简单,但使用更多内存。