简易图片浏览软件设计.doc
《简易图片浏览软件设计.doc》由会员分享,可在线阅读,更多相关《简易图片浏览软件设计.doc(21页珍藏版)》请在沃文网上搜索。
1、简易图片浏览软件设计目 录内容1选题背景22方案论证23软件设计34程序代码55结果分析186总结19参考文献 201 选题背景基于Microsoft Visual Basic 6.0环境的图片浏览器。对Microsoft Visual Basic 6.0软件的进一步了解,运用所学知识解决实际问题。本课题解决的主要问题及技术要求有:1) 多个图片的添加与编号。2) 对已打开图片的文件名以及文件路径的记录并与原图片相对应。3) 已添加图片的单个选择查看。4) 实现图片的上一张,下一张切换。5) 可以自动播放已经添加的图片。6) 对大图片的适应窗口缩放。7) 图片的任意放大缩小,与放大或缩小以后的
2、图片移动(可以通过鼠标拖动与点击按钮两种方式进行)。8) 可以将正在查看的图片在windows系统的画图板中打开编辑。9) 将选择的图片另存为。2 方案论证程序设计原理:1) 使用菜单栏、工具栏以及按钮操作程序。2) 使用commondialog控件来添加文件。3) 使用imagelist控件来对添加的图片标号,记录。4) 使用数组记录所添加图片的文件名、以及文件路径,并在状态栏显示。5) 使用picture控件和image控件来显示图片。6) 使用timer控件控件自动播放的时间。程序采用方案图片使用imagelist编号并加载。文件名与路径使用两个字符数组Names()与Lu()分别记录。
3、3 软件设计流程界面设计功能设计程序编写运行调试控件对象属性列表表1 控件属性表默认名称NameCaptionEnableCommand1Command1上一个TrueCommand2Command2自动播放TrueCommand3Command3下一个TrueCommand4Command4适应窗口TrueCommand5Command5上移EnableCommand6Command6左移EnableCommand7Command7下移EnableCommand8Command8右移EnableCommand9Command9缩小EnableCommand10Command10放大Enabl
4、eCombo1Combo1TrueTimer1Timer1EnableTimer2Timer2Enable菜单栏属性 图3-1 菜单栏“文件” 图3-2 菜单栏“编辑” 图3-3 菜单栏“设置” 图3-4 菜单栏“帮助” 图3-5 菜单栏属性工具栏属性图3-6 工具栏状态栏属性图3-7 状态栏程序运行截图图3-8 程序运行界面4 程序设计代码Public Time As Integer, a As IntegerDim Names(100) As String, Lu(100) As String 定义文件名和文件路径的数组Public x1 As Single, y1 As SinglePu
5、blic p As IntegerConst begin_drag = 1 开始拖动*Private Sub Picture1_DragDrop(Source As Control, X As Single, Y As Single) 图片缩小后拖动的重画Image1.Picture = SourceForm1.Image1.Picture = LoadPicture(StatusBar1.Panels(4) 拖动后重画picture中的图片Image1.Move (X - x1), (Y - y1) Label2.Caption = 图片当前位置 ( & Image1.Left & , &
6、Image1.Top & )End Sub*Private Sub Image1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) 拖动x1 = X 确定重画的坐标y1 = YImage1.Drag begin_dragLabel2.Caption = 图片当前位置 ( & Image1.Left & , & Image1.Top & )End Sub*Private Sub Toolbar1_ButtonClick(ByVal Button As MSComCtlLib.Button) 工具栏 O
7、n Error Resume Next Select Case Button.Key Case 打开 Dim i As Integer a = Val(InputBox(请输入要打开的图片张数, 输入一个整数) If a = 0 Then GoTo Line1 未输入或点击取消 End If For i = 1 To a CD1.ShowOpen Lu(i) = CD1.FileName If CD1.FileName = Then GoTo Line1 如果点击取消后返回窗体 End If Names(i) = CD1.FileTitle Combo1.AddItem Lu(i) 将所选的图
8、片加载到combo1 ImageList1.ListImages.Add , , LoadPicture(Lu(i) 将所选的图片加载到imagelist1 Next i Picture1.Picture = LoadPicture(Combo1.List(0)添加后默认显示第一张图片 StatusBar1.Panels(4) = Lu(1) 在状态栏显示文件路径 StatusBar1.Panels(2) = Names(1) 在状态栏显示文件名 OpenPicture.Enabled = False Save.Enabled = True Case 保存 CD1.ShowSave If Sh
9、owSave = vbOK Then 点击确认后保存文件 SavePicture Picture1, CD1.FileName End If Case 帮助 Shell c:windowssystem32notepad.exe + readme.txt 显示帮助文档 *.exe后要加空格 End SelectLine1:End Sub*Private Sub Form_Load()Timer1.Enabled = TrueTimer1.Interval = 1000CD1.Filter = 所有文件(*.jpg,*.bmp,*.jpeg)|*.jpg;*.bmp;*.jpeg|jpg格式|*.
10、jpg|jpeg格式|*.jpeg|bmp格式|*.bmpImage1.Visible = FalseIf Picture1 = 0 Then 未加载图片保存按钮不可用 Save.Enabled = FalseEnd IfEnd Sub*Private Sub Combo1_Click()Image1.Top = 0: Image1.Left = 0: Image1.Height = 8000: Image1.Width = 10000If Image1.Visible = False Then Picture1.Picture = LoadPicture(Combo1.Text) 当前显示的
11、图片 StatusBar1.Panels(4) = Lu(Val(Combo1.ListIndex) + 1) 在状态栏显示文件路径 StatusBar1.Panels(2) = Names(Val(Combo1.ListIndex) + 1)在状态栏显示文件名ElseIf Image1.Visible = True Then Image1.Picture = LoadPicture(Combo1.Text) StatusBar1.Panels(4) = Lu(Val(Combo1.ListIndex) + 1) 在状态栏显示文件路径 StatusBar1.Panels(2) = Names(
12、Val(Combo1.ListIndex) + 1) 在状态栏显示文件名End IfEnd Sub*Private Sub Command1_Click()Image1.Top = 0: Image1.Left = 0: Image1.Height = 8000: Image1.Width = 10000Combo1.Text = 选择已添加的图片If p 0 Then p = p - 1 If Image1.Visible = False Then Picture1.Picture = ImageList1.ListImages(p + 1).Picture 切换上一张图片 StatusBa
13、r1.Panels(4) = Lu(ImageList1.ListImages(p + 1).Index) 在状态栏显示文件路径 StatusBar1.Panels(2) = Names(ImageList1.ListImages(p + 1).Index) 在状态栏显示文件名 Label1.Caption = 这是第: & p + 1 & 张 一共有: & ImageList1.ListImages.Count & 张图片 Else: Image1.Picture = ImageList1.ListImages(o + 1).Picture 切换上一张图片 StatusBar1.Panels
14、(4) = Lu(ImageList1.ListImages(p + 1).Index) 在状态栏显示文件路径 StatusBar1.Panels(2) = Names(ImageList1.ListImages(p + 1).Index) 在状态栏显示文件名 Label1.Caption = 这是第: & p + 1 & 张 一共有: & ImageList1.ListImages.Count & 张图片 End IfEnd IfIf p = 0 Then 第一张图片切换上一张后跳转至最后一张图片p = ImageList1.ListImages.CountEnd IfEnd Sub*Pri
15、vate Sub Command2_Click() 自动播放按钮Image1.Top = 0: Image1.Left = 0: Image1.Height = 8000: Image1.Width = 10000If ImageList1.ListImages.Count = 0 Then 判断当图片大于一张时自动播放 MsgBox 还未添加图片, 64, 提示ElseIf ImageList1.ListImages.Count = 1 Then If Image1.Visible = False Then Picture1.Picture = ImageList1.ListImages(1
16、).Picture Else: Image1.Picture = ImageList1.ListImages(1).Picture End If MsgBox 只有一张图片, 64, 提示ElseIf Command2.Caption = 自动播放 Then Timer2.Enabled = True Timer2.Interval = 3000 Command2.Caption = 停止播放ElseIf Command2.Caption = 停止播放 Then Timer2.Enabled = False Command2.Caption = 自动播放 Label1.Caption = 这是
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
10 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 简易 图片 浏览 软件设计