回 帖 发 新 帖 刷新版面

主题:vb 图片浏览器

目的与要求
1.目的
培养学生综合利用VB语言进行程序设计的能力,主要是利用VB的标准控件进行设计。
2.基本要求
设计一个简单的图片浏览器,通过DriveListBox 、DirListBox 和FileListBox 一组控件选择图片文件,在PictureBox中显示。

详细要求如下:
    能够打开常见类型的图片,自动进行缩放,适应PictureBox的大小。
    在FileListBox中只列出图片文件。
    使用HscrollBar控件对图片进行缩放。
    使用StatusBar 控件状态条显示图片文件相关信息,包括图片尺寸(单位:象素)、文件大小和日期等。
    可以轮流显示FileListBox中列出图片文件。
3.创新要求
在基本要求达到后,进行创新设计,创新方向提示如下:
★    增加菜单,可以提供菜单控制。
★    可以根据图片的长宽比改变PictrueBox的长宽比。
★    可以改变窗口大小,窗口上的图片也要做相应的调整。
★    当图片放大超过窗口大小后,可以提供鼠标移动图片显示。
★    其它创新(有一定难度,实现代码在30行以上)。

三、设计方法和基本原理
1.问题描述 
程序界面可以参考上面的图。通过单击DriveListBox 、DirListBox 和FileListBox 一组控件选择图片文件,在PictureBox中显示。通过水平滚动条对图片进行缩放,在状态条显示图片文件的部分属性。
2.问题的解决方案
①设计程序界面
参考上图。
②编写代码
包括事件处理过程和功能函数,还有必要的声明。
事件处理包括下面的主要事件:
Form_Load() 
作一些初始化的工作。
Sub DriveX_Change()
改变DirX。
Sub DirX_Change()
改变FileX。
FileX_Click()
显示图片。
Sub HScrX_Change()
处理图片缩放。 
PictureX _ MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
处理图片随鼠标移动。
四、主要技术问题的描述
本题中的难点在于图片的缩放、移动和图片信息的提取。需要同学熟练掌握PictureBox的属性、方法、事件和有关文件的一些函数。
1.图片的缩放
图片的缩放使用PictureBox的PaintPicture方法,
Pic1.PaintPicture Pic1.Picture, 0, 0, J, I, 0, 0, L, K
其中I=当前PictureBox的ScaleHeight;
J=当前PictureBox的ScaleWidth;
K=图片实际的ScaleHeight;
L=图片实际的ScaleWidth;
在使用时还要注意ScaleMode的设置。
2. 图片的移动
图片在PictureBox中的移动,也使用PictureBox的PaintPicture方法,通过修改 picture 内剪贴区的坐标(x-轴和y-轴)实现。
3. 图片信息提取
图片的尺寸可以使用PictureBox的ScaleHeight、ScaleWidth属性得到。更多的图片信息可以通过第三方控件获取。

回复列表 (共6个回复)

沙发

作出来了?加油!~

板凳

支持原创,界面还不错

3 楼

有一点,与一般操作习惯不太相符。应该更正:
就是浏览的那个滚动条。
一般都用4个按钮,外加一个标签。按钮为首幅、上一幅、下一副、末幅;标签则显示当前幅的序次与总数。
也可以做成下一幅到末自动回首,上一幅到首自动回末。

4 楼

两年前初学VB时做的一个类似的图片浏览器。可自动播放选定文件夹下的图片,可调整自动播放间隔。
初学者时的作品,没多少技术含量。有兴趣的可以看看。上传了。
http://file.pfan.cn/upfile/200806191804208.rar
[url=http://file.pfan.cn/upfile/200806191804208.rar]VB初学者之图片浏览器[/url]

5 楼

界面不错。不过还是有些错误。

6 楼


这是老师留给我们的作业 大家帮忙编译下 把代码 发上来吧
谢谢! 谢谢!

我来回复

您尚未登录,请登录后再回复。点此登录或注册