VB PaintPicture (第2篇)

本文是VB PaintPicture系列的第二篇,介绍了如何使用PaintPicture函数实现图片的进入效果,包括从左到右、从左上角斜向下、右上角斜向下的平移动画。此外,还详细讲解了水平和竖直百叶窗效果的实现,通过切割图片并逐条显示来创建动态效果。
摘要由CSDN通过智能技术生成

VB PaintPicture (第2篇)

如果看本篇不太懂的话,请先看第一篇

先把函数参数表放在这里

对象.PaintPicture picture,x1,y1,[width1],[height1],[x2],[y2],[width2],[height2],[opcode]

1.简单的图片的进入效果

实现 图片从左到右进入 的效果,需要怎么做呢

很简单可以想到用paintpicture 函数 比如 每隔0.1秒让图片向右移动一点,嗯,大概就是这个思路

先给出利用API的延时函数的代码

Public Declare Function timeGetTime Lib "winmm.dll" () As Long

Public Sub delay(ByVal n As Single)
    Dim tm1 As Long, tm2 As Long
    tm1 = timeGetTime
    Do
        tm2 = timeGetTime
        If (tm2 - tm1) / 1000 > n Then Exit Do
        DoEvents '转让控制权,令程序在忙于执行指令时抽出少许时间让给别的程序
    Loop 
End Sub

博主画了一下picturebox的坐标系
坐标系

零点在左上角,width向右为正,height向下为正

我们拿下面这张图片做例子

VB中,可以使用`Printer.PaintPicture`方法来实现打印预览功能。该方法用于将图像绘制在打印机驱动程序的画布上,从而实现打印预览效果。 首先,我们需要将需要打印的图像加载到一个PictureBox控件中,可以使用`PictureBox.Load`方法来实现。然后,在打印预览按钮的点击事件中,可以使用`Printer.PaintPicture`方法将图像绘制在打印机驱动程序的画布上。 示例代码如下: ```vb Private Sub btnPrintPreview_Click(sender As Object, e As EventArgs) Handles btnPrintPreview.Click ' 加载需要打印的图像到PictureBox控件 PictureBox1.Load("C:\Path\to\image.png") ' 设置打印机驱动程序的属性 Printer.CurrentX = 100 Printer.CurrentY = 100 Printer.ScaleMode = vbTwips ' 设置绘图单位为屏幕的1/20个点 Printer.Font.Size = 12 ' 绘制图像到打印机驱动程序的画布上 Printer.PaintPicture(PictureBox1.Image, 0, 0) ' 显示打印预览对话框 Printer.EndDoc ' 结束打印任务,弹出打印预览对话框 End Sub ``` 上述代码中,我们首先使用`PictureBox.Load`方法将需要打印的图像加载到PictureBox1控件中。然后,我们设置了打印机驱动程序的属性,包括当前的位置(CurrentX和CurrentY)和绘图单位(ScaleMode),以及字体大小。接着,我们使用`Printer.PaintPicture`方法将图像绘制在打印机驱动程序的画布上。最后,使用`Printer.EndDoc`方法结束打印任务,并弹出打印预览对话框。 这样,点击打印预览按钮后,会出现打印预览对话框,其中显示了绘制在打印机驱动程序画布上的图像内容,从而实现了打印预览的功能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值