实现图像缩放的一种方法 |
p>---- VB的功能强大,应用范围广。VB是标准的面向对象编程语言可视编程,采用事件驱动的编程技术。VB含有大量的VBX(控件)。这是一种针对VB的已经编写好的程序,它们在VB中以各种可视的控制对象的形式出现,例如图形按钮,文字编辑框等等,用户根据自己的需要可直接使用,使编程就象使用积木搭建房屋一样简单。 ---- 在多媒体设计中,图像处理是关键环节。根据窗口界面的大小,图像大小和图形方式下的文字的大小的相应调整,则是一个图形应用软件要做到的基本要求之一。利用VB中的IMAGE控件可以实现图像缩放、相应调整,可以使软件界面更清晰、友好。 ---- 具体编程如下: Option Explicit Private mydb As Database Private myrs As Recordset Private mystate As Byte Private sql As String Public z (定义 z 为公共变量) Private Sub a_Click() Form2.Show Form3.Hide End Sub (不同的按钮,触发不同事件) Private Sub f_Click() End End Sub Private Sub b_Click() Form4.Show End Sub Private Sub g_Click() z = 1 End Sub Private Sub h_click() z = 2 End Sub Private Sub im1_Click() Dim zh, fan As Integer (定义 zh 和fan 为整形变量) If Im1.Width < Pi1.Width Then HS1.Visible = False Else HS1.Visible = True End If If Im1.Height < Pi1.Height Then vs1.Visible = False Else vs1.Visible = True End If If z = 1 Then (放大图象按钮被触发的时候,执行以下程序) Im1.Width = 1.1 * Im1.Width Im1.Height = 1.1 * Im1.Height For zh = 0 To 13 Image1(zh).Left = -480 + 1.1123 * (Image1(zh).Left + 480) Image1(zh).Top = 1.111 * (Image1(zh).Top) Next zh End If If z = 2 Then (缩小图象按钮被触发的时候,执行以下程序) Im1.Width = 0.9 * Im1.Width Im1.Height = 0.9 * Im1.Height For zh = 0 To 13 Image1(zh).Left = -480 + 0.89 * (Image1(zh).Left + 480) Image1(zh).Top = 0.89 * (Image1(zh).Top) Next zh End If Text1.Visible = False HS1.Max = Im1.Width vs1.Max = Im1.Height End Sub Private Sub hs1_change() Im1.Left = -HS1.Value End Sub Private Sub vs1_change() Im1.Top = -vs1.Value End Sub Private Sub im1_ sedown (button As Integer, shift As Integer, x As Single, y As Single) If button = vbRightButton Then (鼠标按下后触发其它的弹出式菜单) PopupMenu popup End If End Sub Private Sub Image1_Click(Index As Integer) Dim v As Long Text1.Visible = True v = Index Set mydb = OpenDatabase("c:\p\kuang.mdb") sql = "select tong.编码,tong.内容 from tong" Set myrs = mydb.OpenRecordset(sql, dbOpenSnapshot) myrs.Move v (根据当前坐标点的位置进行调整) Text1.Text = myrs.Fields("内容") End Sub---- 通过 IMAGE控件的使用,可以简化编程中的某些步骤,使程序优化、简便。 |