第 十九 讲
基本课题:实现图片浏览器(一)
授课日期 |
04.11.10 |
04.11.10 |
授课班级 |
03级计算机5、6班 |
03级计算机7、8班 |
教 学 目 的 与 要 求:
本讲的主要目的是通过图片浏览器的设计,学习Visual Basic的文件系统控件以及图像显示控件的有关属性、方法和事件。并掌握它们的使用方法,同时进一步了解PictureBox控件与Image控件的区别。
教 学 的 重 点、难 点:
重点、难点: 文件系统控件的属性、方法、事件,PictureBox控件与Image控件的区别
对 教 材 的 处 理 和 意 见:
以教材为主,联系实际情况及时做补充
一. 图片显示控件
1. 使用窗体显示图片
作用:背景图片。
方法:Picture属性
窗体大小必须和图片尺寸相同才能圆满显示。
2. 使用PictureBox控件显示图片
(1)作用:为用户显示图片,也可作为其他控件的容器。
(2)PictureBox控件所支持的图形格式
.bmp、.ico、.cur、.wmf、.emf、.jpeg或.jpg、.gif
(3)PictureBox控件的使用
(4)常用属性:
Picture属性:设置被显示的图片文件名(包括可选的路径名)。
AutoSize属性:True:图形框能自动调整大小与显示的图片匹配。
问题:怎样才能使PictureBox尺寸随窗体而改变?
通过编写窗体的Resize事件代码来实现,亦即在运行中当窗体尺寸改变时,触发其Resize事件,执行Resize事件代码,从而调整窗体中PictureBox控件的有关属性,使其与窗口尺寸同步改变。
Private sub Form_Resize()
Picture1.Left = 0
Picture1.Top = 0
Picture1.Width = Form1.ScaleWidth
Picture1.Height = Form1.ScaleHeight
End Sub
(5)常用方法
如果要在运行时向图片框区域输出文本信息,应将图片框的AutoRedraw属性设置为True,并在代码中使用PictureBox的Print方法。
Private Sub Command1_Click()
Static i As Integer
Picture1.CurrentX = i * 100
Picture1.Print "这是" + Str(i) + "行文本"
i = i + 1
End Sub
3. 使用Image控件
与图形框的不同:图像框占用内存比图片框少,描绘的更快,且图像框内不能保存其他控件。
常用属性:
Stretch:值为False时,图像框可自动改变大小以适应其中的图形,值为True时,加载到图像框的图形可自动调整尺寸以适应图像框的大小。
4. 运行时载入图片
对象名.Picture=LoadPicture(“图形文件名”)
从图片框中删除一个图形,可用LoadPicture()将一个空白图形装入图形框的Picture属性。
如果要将图标赋予窗体,则要把LoadPicture函数的返回值赋给Form对象的Icon属性:
Form1.Icon= LoadPicture(”图形文件名”)
图标也可以被赋予除Timer控件和Menu控件以外的其他控件的DragIcon属性,例如:
Commond1.DragIcon= LoadPicture(”图形文件名”)’首先把DragMode属性值设为1
使用LoadPicture函数还可将图形文件载入到系统剪切板,如下:
Clipboard.SetData LoadPicture(“图形文件名”)
二. 文件系统控件
三种: 驱动器列表框(DriveListBox)、目录列表框 (DirListbox)和文件列表框 (FileListBox)
作用:显示出关于驱动器、目录和文件的信息,并从中进行选择以便执行进一步的操作。
(一) 驱动器列表框
1.功能:显示和选择驱动器。
2.常用属性:Enabled, Visible, Drive等。
3.常用事件:Change
注意:使用ChDrive drive1.drive 可改变当前驱动器。
4.利用DriveListBox控件来进行程序设计的示例:
(1)添加控件
首先在空白的窗体上放置一个DriveListBox控件。
(2)添加代码
Private Sub Form_load()
Drive1.Drive="e:\" '设置控件的缺省驱动器为E。
End Sub
(3)存储文件,运行程序。
(二) 目录列表框
1.功能:显示和选择目录。
2.常用属性:
(1)Path属性
Path属性用于返回或设置当前路径,属性的值是一个指示路径的字符串,例如"e:\user"或"c:\PWIN95\MEDIA"。
格式:[窗体.]目录列表框.|文件列表框.Path = [=”路径”]
如:Dir1.Path = "e:\mp3"
Private Sub Drive1_Chang()
Dir1.Path = Drive1.Drive '设置DirListBox控件的路径与DriveListBox控件同步
End Sub
(2)List 属性
list属性的功能是返回或设置控件的列表部分的工程
语法如下:object.list(index)[=string]
list属性语法包含下面部分:
- object:对象表达式
- index:列表中具体某一工程的号码
- string:字符串表达式
对于DirListBox 控件,索引号序列listindex基于在运行中创建该控件时的当前目录和子目录。当前展开的目录用索引值-1表示,当前展开目录的上一级目录用绝对值更大一些的负索引值来表示。它的第一个子目录序号为0,第二个子目录的序号为1,以此类推。
(3)ListCount属性
ListCount属性的功能是返回控件的列表部分工程的个数,对DirlistBox控件而言,ListCount 属性中存储着当前目录中子目录的个数。
Private Sub Dir1_Change()
MsgBox Dir1.listcount '输出选中目录的子目录个数。
End Sub
3.常用事件:Change
4.注意:使用ChDir dir1.path 可设置当前目录。
(三) 文件列表框
1.功能:在程序的运行过程中,根据path属性指定的目录,将文件定位并列举出来。
2.文件操作的常用属性和方法。(P232 表12-1)
FileName:返回或设置所选文件的路径和文件名,设计时不可用。
3.举例:
例1:
(1)界面设计
在空白的窗体上添加一个FileListBox 控件.
(2)添加textbox控件
在窗体上添加一个textbox控件,它的name属性设置为text1,text属性设置为"文件路径:",它的作用是显示选中文件的路径和文件名。
(3)添加代码
在设计阶段双击窗体,在窗体的form_load()事件中添加下列代码:
Private Sub Form_load()
file1.path="c:\windows\" '初始化控件的目录。
End Sub
在这里程序通过file1.path="c:\pwin95\" 这条语句就把filelistbox控件的设置为"c:\pwin95\"
在设计阶段双击filelistbox控件,在它的file1_click()事件添加下列是代码:
Private Sub File1_click()
text1.text="文件路径:" & file1.path & "\" & file1.filename '在文本框中显示文件的路径和文件名。
End Sub
在语句Text1.text="文件路径:" & file1.path & "\" & file1.filename 中,file1.path存储着文件 的路径,而file1.filename中存储着文件名,所以在文本框中就会显示出选中文件的路径和文件名。
(4)存储文件,运行程序
例2:在同一窗体内显示驱动器列表框、目录列表框、文件列表框,并使三者同步。
Private Sub Drive1_Change()
‘ChDrive Drive1.Drive
Dir1.Path = Drive1.Drive
End Sub
Private Sub Dir1_Change()
File1.Path = Dir1.Path
End Sub
四. 图片浏览器的设计与实现
1. 界面设计
工程名称:图片浏览器.vbp
(1)窗口属性设置
窗体标题:图片浏览器
(2)添加控件对象
3个标签,1个驱动器列表框控件,1个文件列表框控件,1个文件列表框控件,1个Image控件和两个按钮控件。
(3)设置控件属性
2. 编写代码 |