computer 版 (精华区)

发信人: windoe (为中国电信做贡献), 信区: program
标  题: VB:如果一张图片太大,如何用滚动条控制显示它的内容
发信站: 听涛站 (Fri Mar 10 19:09:19 2000), 转信

我们知道,VB里面的窗体(Form)没有象Delphi那样的滚动条。因此,要实现这种
控制功能,就必须“自己动手,丰衣足食”了。那么,我们如何来解决这个问题呢?
可以根据横,竖滚动条的数值改变,赋值图片的坐标X,Y的方法,再结合Picture控
件的容器(Container)特征来实现。
具体步骤如下:
1) 在VB中新建一个标准EXE工程;
2) 画出一个图片Picture1,横滚动条Hscroll1和竖滚动条VScroll1;
3) 在Picture1里面画一个Image1,设置Image1的Picture属性为一张较大的图片;
4) 在Form_Load事件中编写以下代码:
Private Sub Form_Load()
'初始化滚动条的最大滚动数值
HScroll1.Max = Image1.Width-Picture1.Width
VScroll1.Max = Image1.Height-Picture1.Height
End Sub
5) 在HScroll1_Change中编写以下代码,控制图片的横向滚动:
Private Sub HScroll1_Change()
'图片的坐标X等于滚动的数值
Image1.Left = -HScroll1.Value
End Sub
6) 在VScroll1_Change中编写以下代码,控制图片的纵向滚动:
Private Sub VScroll1_Change()
'图片的坐标Y等于滚动的数值
Image1.Top = -VScroll1.Value
End Sub
7) 设计完成,运行软件。


--By Kammi's SuperPost General Version
--

夜中不能寐,起坐弹鸣琴。
    薄帷鉴明月,清风吹我襟。
孤鸿号外野,翔鸟鸣北林。
    徘徊将何见,忧思独伤心。


[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:2.581毫秒