您的位置:逆风者 VB 正文
原作者:www.upwinder.com 添加时间:2007-09-02 原文发表:2007-08-31 人气:34 来源:未知

本文章共2866字,分2页,当前第1页,快速翻页:
 
摘要:本文给出了一个用VB5.0实现的鼠标绘图程序,对程序的主要功能及实现细节作 了详细说明,并给出了部分源程序.
逆风者
关键词:VB5.0,可视化程序设计

1. 引言
MicroSoft公司推出的新一代可视化程序设计语言VB5.0以其功能强大和简单易学而深受广大程序设计人员的喜爱,人们用它开发出了许多绚丽多彩的应用程序,可以这样说,VB5.0将成为最流行的可视化程序设计语言.
笔者在学习和使用VB5.0的过程中编制了一个实用的鼠标绘图程序,现提供给大家,以供大家参考.

2. 程序主要功能
本绘图程序的模块结构图如下所示:
鼠标绘图程序:
文件
新建
装入
保存
退出
绘图
颜色
前景色
背景色
线宽
1象素宽
2象素宽
3象素宽
4象素宽
清除

3. 实现细节
本程序主要是实现用鼠标在窗体上绘图,在绘图过程中可选择颜色及线宽,同时可将所绘图形以位图(.bmp)文件的形式存储在盘上,也可将盘上的其它图形文件调入窗体.
3.1 用鼠标在窗体上绘图
利用窗体对象的MouseDown和MouseMove事件可实现鼠标在窗体上绘图:

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
CurrentX = X
CurrentY = Y
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Button Then
Line -(X, Y), forcolor
End If
End Sub

其中forcolor为绘图的前景色,在本程序中前景色由用户选取.

3.2 颜色选取
利用通用对话框控件Commondialog的ShowColor方法可实现前景色和背景色的选取:

Private Sub mnubkcolor_Click()
CommonDialog1.CancelError = True
On Error GoTo errhandler
CommonDialog1.Flags = &H1&
CommonDialog1.ShowColor
BackColor = CommonDialog1.Color
Exit Sub
errhandler:
Exit Sub
End Sub

3.3 线宽的设置
通过设置窗体对象的属性DrawWidth的值可实现绘图时线宽的设置,DrawWidth=1时,线宽为1个象素,以此类推.

3.4 图形的保存
结合使用通用对话框控件Commondialog的ShowSave方法和SavePicture语句可实现图形的保存:

Private Sub mnusave_Click()
On Error GoTo errhandler
CommonDialog1.Filter = "bmp files(*.bmp)"
CommonDialog1.ShowSave
SavePicture Image, CommonDialog1.FileName
Exit Sub
errhandler:
Exit Sub
End Sub

3.5 图形的调入
结合使用通用对话框控件Commondialog的ShowOpen方法和LoadPicture函数可实现图形的调入:

Private Sub mnuload_Click()
On Error GoTo errhandler
CommonDialog1.Filter = "bmp files(*.bmp)"
CommonDialog1.ShowOpen
Picture = LoadPicture(CommonDialog1.FileName)
Exit Sub
errhandler:
Exit Sub
End Sub
4. 源程序清单

VERSION 5.00
Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "COMDLG32.OCX"
Begin VB.Form frmdraw
AutoRedraw = -1 'True
Caption = "绘图工具软件(嘉兴高专机电系计算中心)"
ClientHeight = 4230
ClientLeft = 1140
ClientTop = 1815
ClientWidth = 6720
BeginProperty Font
Name = "隶书"
Size = 5.25
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
LinkTopic = "Form1"
PaletteMode = 1 'UseZOrder
ScaleHeight = 4230
ScaleWidth = 6720
WindowState = 2 'Maximized
Begin MSComDlg.CommonDialog CommonDialog1
Left = 4920
Top = 2880
_ExtentX = 847
_ExtentY = 847
_Version = 393216
End
Begin VB.Menu mnufile
Caption = "文件"
Begin VB.Menu mnunew
Caption = "新建"
End
Begin VB.Menu mnustepa
Caption = "-"
End
Begin VB.Menu mnuload
Caption = "装入"
End
Begin VB.Menu mnustepb
Caption = "-"
End
Begin VB.Menu mnusave
Caption = "保存"
End
Begin VB.Menu mnustepc
Caption = "-"
End
 
本文章更多内容1 - 2 - 下一页>>
相关文章

VB 从零开始编外挂(五)
利用VB三维面板控件设计流动条
用VB编程实现图像的熠熠生辉效果
在VB中调用EXCEL
制作自己的网络搜索软件
用VB编写标准CGI程序(下)
用VB6.0设计简易赛车游戏
用API函数控制光驱的开关
用VB自制屏幕保护程序
VB 从零开始编外挂(六)
利用INI文件给程序创建动态菜单
VB6制作Win98风格的工具栏
VB实现按钮浮动效果
自动更新工作站的应用程序
用VB读写注册表实例
用VB尝试新的界面风格
在桌面上建立一个 Internet 快捷键
用VB计算1 1=2
桌面屏幕翻转
在VB中如何得到网络中某一台电脑(电脑名)的

相关评论


本文章所属分类:首页 VB

  热门关键字: