版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
VB6.0的小程序计算器VB6.0的小程序计算器VB6.0的小程序计算器VB6.0的小程序计算器编制仅供参考审核批准生效日期地址:电话:传真:邮编:的小程序计算器对于刚入门学习VB6的朋友来说肯定会做些小程序吧,这里就是给大家演示个简单的计算器程序,仅供参考啦。界面上加减乘除四个按钮分别是cmdAdd、cmdPlus、cmdMultiple、cmdDevide,小数点按钮是cmdDot,负号按钮是cmdMinuse,数字0~9为了偷懒,用了控件数组cmdNumber(0)~cmdNumber(9),上面txtShow是显示数字和结果用的,txtOperate是显示中间步骤的。思路大致是这样,点加减乘除这类操作符的时候,把当前txtShow的值保存在模块变量mstrParam1里,同时把操作符保存到mstrOperate里,按等于号时把先把当前txtShow的值保存在模块变量mstrParam2里,然后对mstrParam1和mstrParam2进行运算,当然要记得设法把String转换成数值进行运算。转换的过程要注意,这里是用的Variant数据类型,vParam1和vParam2都是Variant类型,保存的是mstrParam1和mstrParam2的数值。之所以不用integer、long、double这些标准类型,是因为这些类型都有大小限制,做出来用着不方便,VB最大的整型long才到47,这意味着计算器的计算结果只能限制在9位到10位。而Variant类型可以支持非常大的数,具体多大不清楚,但起码几十位是能够支持的。另外,最后算完的结果也要做格式化,因为如果数值非常大的话,VB会自动转成科学计数法,所以要用Format函数进行调整。如果需要源代码的话在我百度空间里留言。ExplicitPrivateConstmstrFORMATDEFAULTAsString="#.##"PrivatemstrParam1AsString,mstrParam2AsStringPrivatemstrOperateAsStringPrivateSubcmdAdd_Click()mstrParam1=TrimmstrOperate="+"=""=&mstrParam1&vbCrLf=&mstrOperate&vbCrLfEndSubPrivateSubcmdPlus_Click()mstrParam1=TrimmstrOperate="-"=""=&mstrParam1&vbCrLf=&mstrOperate&vbCrLfEndSubPrivateSubcmdMultiple_Click()mstrParam1=TrimmstrOperate="*"=""=&mstrParam1&vbCrLf=&mstrOperate&vbCrLfEndSubPrivateSubcmdDevide_Click()mstrParam1=TrimmstrOperate="/"=""=&mstrParam1&vbCrLf=&mstrOperate&vbCrLfEndSubPrivateSubcmdDot_Click()DimmstrShowAsStringDimiAsIntegermstrShow="."i=InStr(1,,mstrShow)Ifi<=0Then=&mstrShowEndIfEndSubPrivateSubcmdMinuse_Click()DimmstrShowAsStringDimiAsIntegermstrShow="-"i=InStr(1,,mstrShow)Ifi<=0Then=mstrShow&Else=Right,Len-1)EndIfEndSubPrivateSubcmdNumber_Click(IndexAsInteger)DimmstrShowAsStringmstrShow=Index=&mstrShowEndSubPrivateSubcmdClear_Click()=""EndSubPrivateSubcmdResult_Click()DimvParam1AsVariant,vParam2AsVariantDimvResultAsVariantDimstrResultAsStringDimiAsLongDimblnBeforeDotAsBooleanDimlngDotPosAsLongDimblnMinuseAsBooleanmstrParam2=Trim=&mstrParam2&vbCrLfvParam1=0blnBeforeDot=TruelngDotPos=-1blnMinuse=FalseFori=1ToLen(mstrParam1)IfIsNumeric(Mid(mstrParam1,i,1))=TrueThenIfblnBeforeDot=TrueThenvParam1=vParam1*10+CByte(Mid(mstrParam1,i,1))ElsevParam1=vParam1+CByte(Mid(mstrParam1,i,1))*^(i-lngDotPos))EndIfElseIfMid(mstrParam1,i,1)="."ThenblnBeforeDot=FalselngDotPos=iElseIfMid(mstrParam1,i,1)="-"ThenblnMinuse=TrueEndIfNextiIfblnMinuse=TrueThenvParam1=-vParam1EndIfvParam2=0blnBeforeDot=TruelngDotPos=-1blnMinuse=FalseFori=1ToLen(mstrParam2)IfIsNumeric(Mid(mstrParam2,i,1))=TrueThenIfblnBeforeDot=TrueThenvParam2=vParam2*10+CByte(Mid(mstrParam2,i,1))ElsevParam2=vParam2+CByte(Mid(mstrParam2,i,1))*^(i-lngDotPos))EndIfElseIfMid(mstrParam2,i,1)="."ThenblnBeforeDot=FalselngDotPos=iElseIfMid(mstrParam2,i,1)="-"ThenblnMinuse=TrueEndIfNextiIfblnMinuse=TrueThenvParam2=-vParam2EndIfSelectCasemstrOperateCase"+"vResult=vParam1+vParam2Case"-"vResult=vParam1-vParam2Case"*"vResult=vParam1*vParam2Case"/"vResult=vParam1/vParam2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年度能源设备抵押权人环保责任合同3篇
- ci语言课程设计
- 无奋斗不青春演讲稿范文(5篇)
- 高考作文名师点评全国Ⅱ卷
- 春节日记合集九篇
- 甲苯管壳换热器课程设计
- 教育培训电视广告语大全
- 搞笑主持词开场白范文
- 2024年度新能源项目碳排放权转让协议范本3篇
- 教研组微能力点研修计划范文(14篇)
- GB/T 1038-2000塑料薄膜和薄片气体透过性试验方法压差法
- 马工程《教育学原理》课后习题讲解
- 茶艺表演费课件
- 创建电力优质工程策划及控制课件
- DBJ61-T 104-2015 陕西省村镇建筑抗震设防技术规程-(高清版)
- 测控电路第7章信号细分与辨向电路
- 外研版(三起)小学英语四年级上册教案(全册)
- 小学生体育学习评价表
- 哈尔滨工业大学信纸模版
- 餐饮店应聘人员面试测评表
- 踝关节扭伤.ppt
评论
0/150
提交评论