发布网友 发布时间:2022-05-12 06:32
共5个回答
热心网友 时间:2022-04-26 15:46
最简单的应该是用Picture当作容器,里面放置一个Image来显示图像,以下代码需要在窗口中放置标签、 文本框、按钮、标准对话框控件、Picuture各一个(其中Picutre控件中需要放置一个Image和一个垂直滚动条,如下图),然后使用下列代码即可:
Private Sub Command1_Click()
Dim oPic As StdPicture
With CommonDialog1
.Filter = "所有图片文件(*.jpg;*.gif;*.bmp;*.emf;)|*.jpg;*.gif;*.bmp;*.emf;"
.ShowOpen
If .FileName <> "" Then
Text1 = .FileName
Set oPic = LoadPicture(.FileName)
If Not oPic Is Nothing Then
Image1.Picture = oPic
Image1.Left = 0
Image1.Top = 0
If Image1.Height > Picture1.ScaleHeight Then
VScroll1.Max = (Image1.Height - Picture1.ScaleHeight) / 10
VScroll1.Value = 1
VScroll1.Value = 0
VScroll1.Visible = True
VScroll1.Refresh
Else
VScroll1.Visible = False
End If
End If
End If
End With
End Sub
Private Sub Form_Load()
Text1.Locked = True
Picture1.ScaleMode = vbPixels
Image1.Left = 0
Image1.Top = 0
With VScroll1
.Left = Picture1.ScaleWidth - .Width
.Top = 0
.Height = Picture1.ScaleHeight
End With
End Sub
Private Sub VScroll1_Change()
If Image1.Picture <> 0 Then
Image1.Top = -VScroll1.Value * 10
VScroll1.LargeChange = 20
End If
End Sub
热心网友 时间:2022-04-26 17:04
Picture1控件中放置图片后,其图片在控件中的位置已经确定,仅仅利用Picture1和滚动条实现图片滚动是不可能的。热心网友 时间:2022-04-26 18:39
最简单的方法是:热心网友 时间:2022-04-26 20:30
什么叫未显示完整的内容?那个图片不是一个整体的啊···如果是一个整体的话,那你直接编滚动条就可以了,真不行的话就用两个图片框好了···热心网友 时间:2022-04-26 22:38
picture的paintpicture方法 根据滚动条的value值调整图象y坐标即可