电信主站 网通分站
购买流程 付款方式 常见问题 在线提问 续租服务 购物车
用户名: 密 码: 忘记密码?
首 页
域名注册
虚拟主机
双线主机
服务器租用
VPS主机
企业邮局
代理专区
客服中心
虚拟主机行业资讯 虚拟主机评测对比 互联网最新动态 技术学院 站长资讯 在线教程 网站运营
搜索优化 服务器 网络编程 图形图象 站长之家 网页制作 操作系统
冲浪宝典 软件教学 视频通信 办公软件 邮件系统 网络安全 认证考试
您当前位置:西部数码->资讯中心-> 网页制作-> CSS教程
一个用vb5.0实现的鼠标绘图程序_visualbasic教程
作者:网友供稿 点击:0
  西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!虚拟主机可在线rar解压,自动数据恢复设置虚拟目录等.虚拟主机免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金!
文章页数:[1] 
摘要:本文给出了一个用VB5.0实现的鼠标绘图程序,对程序的主要功能及实现细节作了详细说明,并给出了部分源程序.
关键词:VB5.0,可视化程序设计

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

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

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

PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
CurrentX=X
CurrentY=Y
EndSub
PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfButtonThen
Line-(X,Y),forcolor
EndIf
EndSub

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

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

PrivateSubmnubkcolor_Click()
CommonDialog1.CancelError=True
OnErrorGoToerrhandler
CommonDialog1.Flags=&H1&
CommonDialog1.ShowColor
BackColor=CommonDialog1.Color
ExitSub
errhandler:
ExitSub
EndSub

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

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

PrivateSubmnusave_Click()
OnErrorGoToerrhandler
CommonDialog1.Filter="bmpfiles(*.bmp)"
CommonDialog1.ShowSave
SavePictureImage,CommonDialog1.FileName
ExitSub
errhandler:
ExitSub
EndSub

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

PrivateSubmnuload_Click()
OnErrorGoToerrhandler
CommonDialog1.Filter="bmpfiles(*.bmp)"
CommonDialog1.ShowOpen
Picture=LoadPicture(CommonDialog1.FileName)
ExitSub
errhandler:
ExitSub
EndSub
4.源程序清单

VERSION5.00
Object="{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0";"COMDLG32.OCX"
BeginVB.Formfrmdraw
AutoRedraw=-1True
Caption="绘图工具软件(嘉兴高专机电系计算中心)"
ClientHeight=4230
ClientLeft=1140
ClientTop=1815
ClientWidth=6720
BeginPropertyFont
Name="隶书"
Size=5.25
Charset=134
Weight=400
Underline=0False
Italic=0False
Strikethrough=0False
EndProperty
LinkTopic="Form1"
PaletteMode=1UseZOrder
ScaleHeight=4230
ScaleWidth=6720
WindowState=2Maximized
BeginMSComDlg.CommonDialogCommonDialog1
Left=4920
Top=2880
_ExtentX=847
_ExtentY=847
_Version=393216
End
BeginVB.Menumnufile
Caption="文件"
BeginVB.Menumnunew
Caption="新建"
End
BeginVB.Menumnustepa
Caption="-"
End
BeginVB.Menumnuload
Caption="装入"
End
BeginVB.Menumnustepb
Caption="-"
End
BeginVB.Menumnusave
Caption="保存"
End
BeginVB.Menumnustepc
Caption="-"
End
BeginVB.Menumnuexit
Caption="退出"
End
End
BeginVB.Menumnudraw
Caption="绘图"
BeginVB.Menumnucolor
Caption="颜色"
BeginVB.Menumnuforcolor
Caption="前景色"
End
BeginVB.Menumnustep1a
Caption="-"
End
BeginVB.Menumnubkcolor
Caption="背景色"
End
End
BeginVB.Menumnustepg
Caption="-"
End
BeginVB.Menumnudrawwidth
Caption="线宽"
BeginVB.Menumnupixel1
Caption="1象素宽"
End
BeginVB.Menumnustep31
Caption="-"
End
BeginVB.Menumnupixel2
Caption="2象素宽"
End
BeginVB.Menumnustep32
Caption="-"
End
BeginVB.Menumnupixel3
Caption="3象素宽"
End
BeginVB.Menumnustep33
Caption="-"
End
BeginVB.Menumnupixel4
Caption="4象素宽"
End
End
BeginVB.Menumnustepf
Caption="-"
End
BeginVB.Menumnuclearz
Caption="擦除"
BeginVB.Menumnuclear1
Caption="全部擦除"
End
BeginVB.Menumnustepo
Caption="-"
End
BeginVB.Menumnuclear2
Caption="部分擦除"
End
End
End
End
AttributeVB_Name="frmdraw"
AttributeVB_GlobalNameSpace=False
AttributeVB_Creatable=False
AttributeVB_PredeclaredId=True
AttributeVB_Exposed=False
DimforcolorAsLong

PrivateSubmnubkcolor_Click()
CommonDialog1.CancelError=True
OnErrorGoToerrhandler
CommonDialog1.Flags=&H1&
CommonDialog1.ShowColor
BackColor=CommonDialog1.Color
ExitSub
errhandler:
ExitSub
EndSub

PrivateSubmnuclear1_Click()
Picture=LoadPicture("")
EndSub

PrivateSubmnuforcolor_Click()
CommonDialog1.CancelError=True
OnErrorGoToerrhandler
CommonDialog1.Flags=&H1&
CommonDialog1.ShowColor
forcolor=CommonDialog1.Color
ExitSub
errhandler:
ExitSub
EndSub

PrivateSubmnuexit_Click()
End
EndSub
PrivateSubmnuload_Click()
OnErrorGoToerrhandler
CommonDialog1.Filter="AllFiles(*.*)"
CommonDialog1.ShowOpen
Picture=LoadPicture(CommonDialog1.FileName)
ExitSub
errhandler:
ExitSub
EndSub
PrivateSubmnunew_Click()
Picture=LoadPicture("")
EndSub
PrivateSubmnupixel1_Click()
DrawWidth=1
EndSub
PrivateSubmnupixel2_Click()
DrawWidth=2
EndSub
PrivateSubmnupixel3_Click()
DrawWidth=3
EndSub
PrivateSubmnupixel4_Click()
DrawWidth=4
EndSub
PrivateSubmnusave_Click()
OnErrorGoToerrhandler
CommonDialog1.Filter="AllFiles(*.*)"
CommonDialog1.ShowSave
SavePictureImage,CommonDialog1.FileName
ExitSub
errhandler:
ExitSub
EndSub
PrivateSubForm_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
CurrentX=X
CurrentY=Y
EndSub
PrivateSubForm_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfButtonThen
Line-(X,Y),forcolor
EndIf
EndSub

5.结束语
本程序已在VB5.0环境下调试通过,有兴趣的读者可对该程序进行扩充,以完成更强的绘图功能->


文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!
相关主题
文章页数:[1] 
Google
热门文章
·怎样接收电子邮件(pop3协议简介)_visualbasic教程
·针对浏览器隐藏css之九大技巧_css教程
·运筹帷幄 用css控制网站总“队形”_css教程
·span和div的区别_css教程
·css属性中display与visibility的不同_css教程
·网页风格化 用css实现皮肤适时切换_css教程
·用css制作具有亲和力的表格_css教程
·也谈在unix系统中杀死相关终端的进程_shell教程
·不用float实现模块居中布局_css教程
·亚马逊收购美高级时装销售网站shophop.com_互联网

最新文章
·西部数码虚拟主机新增防盗链功能|防盗链虚拟主机
·css中如何正确的使用id和class_css教程
·技巧总结:div中class与id的区别及应用_css教程
·photoshop新手看过来:漫画风格插画_photoshop教程
·小技巧: 利用css同比例缩小图片_css教程
·css hack汇总快查_css教程
·需要掌握的八个css布局技巧_css教程
·photoshop巧妙打造绚丽立体花朵_photoshop教程
·photoshop滤镜组合打造魔幻背景_photoshop教程
·ado.net 如何读取 excel_ado.net应用


 
 


版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!

特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
  打印  刷新  关闭
返回首页 |关于我们 | 联系我们 | 付款方式 | 创业联盟 | 虚拟主机 | 资讯中心 | 友情链接 | 网站地图

版权所有 西部数码(www.west263.com)
CopyRight (c) 2002~2006 west263.com all right reserved.
公司地址:四川成都市万和路90号天象大厦4楼 邮编:610031
电话总机:028-86262244 86263048 86263408 86263960 86264018 86267838
售前咨询:总机转201 202 203 204 206 208
售后服务:总机转211 212 213 214
财务咨询:总机转224 223 传真:028-86264041 财务QQ:点击发送消息给对方635483282
售前咨询QQ:点击发送消息给对方2182518 点击发送消息给对方241975952 点击发送消息给对方275026793 点击发送消息给对方408235859
售后服务QQ:点击发送消息给对方17708515 点击发送消息给对方307742704 点击发送消息给对方287976517 点击发送消息给对方363783715
《中华人民共和国增值电信业务经营许可证》编号:川B2-20030065号