您好,欢迎来到榕意旅游网。
搜索
您的当前位置:首页VB程序设计报告格式

VB程序设计报告格式

来源:榕意旅游网


Visual Basic程序设计

题目:看图工具

学生姓名:

学生班级: 1102 指导教师:

提交日期:

1. 看图工具介绍(四号字,宋体,加粗)

实现简单的看图

2. 程序界面

图1 看图工具主界面

3. 程序设计

3.1 变量说明

'定义一个记录文件名及其路径的变量 Dim strFilePath As String

'用于设于PictureBox控件背景颜色变量 Dim bkcolor As Color '定义用于处理图片拖动的变量

'PictureBox控件相对于其容器左上角的距离 Private m_Leftx As Integer Private m_Lefty As Integer '鼠标当前的位置

Dim m_MousePosX As Integer Dim m_MousePosY As Integer '图像移动的距离 Dim m_DriftX As Integer

Dim m_DriftY As Integer3.2

过程说明

          

'使文件列表框的内容跟着目录列表框的选择而变化 DirListBox1_SelectedIndexChanged()

'赋初值,记下PictureBox1控件相对其容器左上角的距离 Form1_Load()

'使目录列表框的内容跟着驱动器列表框的选择而变化

DriveListBox1_SelectedIndexChanged()

'使目录列表框的内容跟着驱动器列表框的选择变化而变化 DriveListBox1_TextChanged()

'使文件列表框的内容跟着目录列表框的选择而变化 DirListBox1_SelectedIndexChanged()

'单击文件列表框的某项内容时记下该文件的路径及其名称 FileListBox1_Click()

'双击文件列表框某个图片,使之在图片框中显示

FileListBox1_DoubleClick()

4. 源码说明 '使目录列表框的内容跟着驱动器列表框的选择而变化 Private Sub DriveListBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DriveListBox1.SelectedIndexChanged DirListBox1.Path = DriveListBox1.Drive End Sub '使目录列表框的内容跟着驱动器列表框的选择变化而变化 Private Sub DriveListBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DriveListBox1.TextChanged DirListBox1.Path = DriveListBox1.Drive End Sub '使文件列表框的内容跟着目录列表框的选择而变化 Private Sub DirListBox1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DirListBox1.SelectedIndexChanged

FileListBox1.Path = DirListBox1.Path End Sub '使文件列表框的内容跟着目录列表框的选择变化而变化 Private Sub DirListBox1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles DirListBox1.TextChanged FileListBox1.Path = DirListBox1.Path End Sub '单击文件列表框的某项内容时记下该文件的路径及其名称 Private Sub FileListBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles FileListBox1.Click strFilePath = DirListBox1.Path & \"\\\" & FileListBox1.FileName End Sub '双击文件列表框某个图片,使之在图片框中显示 Private Sub FileListBox1_DoubleClick(ByVal sender As Object, ByVal e As System.EventArgs) Handles FileListBox1.DoubleClick Try PictureBox1.Image = Image.FromFile(strFilePath) '在状态栏中显示此图片文件的路径及文件名 filename.Text = strFilePath Catch ex As Exception End Try End Sub Private Sub 原图显示ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 原图显示ToolStripMenuItem.Click PictureBox1.SizeMode = PictureBoxSizeMode.Normal End Sub Private Sub 自动缩放图片ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 自动缩放图片ToolStripMenuItem.Click

PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage End Sub Private Sub 图片居中ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 图片居中ToolStripMenuItem.Click PictureBox1.SizeMode = PictureBoxSizeMode.CenterImage End Sub Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load '赋初值,记下PictureBox1控件相对其容器左上角的距离 '定义处理鼠标按下的事件 '当鼠标按下时,将鼠标变成手形,并且记录下当前鼠标的位置 Private Sub PictureBox1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseDown Try Me.Cursor = System.Windows.Forms.Cursors.Hand m_MousePosX = e.X m_MousePosY = e.Y Catch ex As Exception End Try End Sub '定义处理鼠标释放的事件 '处理鼠标按键释放的事件,根据鼠标按下时保存的鼠标位置,和当前鼠标的位置,计算鼠标移动偏移量,借此调用移动图片的函数,移动图片 Private Sub PictureBox1_MouseUp(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles PictureBox1.MouseUp Try '计算出鼠标的偏移量 m_DriftX = m_MousePosX - e.X m_DriftY = m_MousePosY - e.Y '计算出新的PictureBox1控件相对其容器左上角的距

离 m_Leftx = m_Leftx - m_DriftX m_Lefty = m_Lefty - m_DriftY picturemove(sender, e) '当鼠标释放时,将鼠标还原为箭头形状 Me.Cursor = System.Windows.Forms.Cursors.Arrow Catch ex As Exception End Try End Sub '根据偏移量计算出图片位置,重画图片 Private Sub picturemove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Try Dim myBit As New System.Drawing.Bitmap(PictureBox1.Image) Dim myPicGrh As System.Drawing.Graphics = Me.PictureBox1.CreateGraphics '清除整个绘图画面,并已指定的背景颜色填充 myPicGrh.Clear(Me.PictureBox1.BackColor) '在指定的位置使用图像的原始物理大小绘制指定的图像 myPicGrh.DrawImageUnscaled(myBit, m_Leftx, m_Lefty) myBit.Dispose() myPicGrh.Dispose() Catch ex As Exception End Try End Sub

Private Sub 自动缩放图片框ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 自动缩放图片框ToolStripMenuItem.Click PictureBox1.SizeMode = PictureBoxSizeMode.AutoSize End Sub '当窗体大小发生变化时保证窗体上的界面元素不乱 Private Sub Form1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Resize '使文件列表框的高度等于窗体高度一般,且会靠着底部显示(由于Dock属性设置为Bottom) FileListBox1.Height = Me.Height / 2 '使目录列表框的高度等于窗体高度一般再减去驱动器列表框的高度,即让它们紧挨着排列 DirListBox1.Height = Me.Height / 2 - DriveListBox1.Height '使 Panel2控件宽度等于窗体宽度减去 Panel1宽度,为了界面美观再减去了 Panel2.Width = Me.Width - 199 PictureBox1.Width = Panel2.Width PictureBox1.Height = Panel2.Height End Sub Private Sub 退出ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 退出ToolStripMenuItem.Click Me.Close() End Sub Private Sub 背景色ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles 背景色ToolStripMenuItem.Click '打开调色板,并把用户选择的颜色赋给bkcolor If ColorDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then bkcolor = ColorDialog1.Color

PictureBox1.BackColor = bkcolor End If End Sub

5. 对于该选题日后改进的设想

优点:该程序简单实现了图片的加载,查看

缺点是:不能对图片进行修改

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- nryq.cn 版权所有 赣ICP备2024042798号-6

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务