如何使用VFP制作一个简易的计算器

如何使用VFP(Microsoft Visual FoxPro)设计一个简易计算器?
胡伟
本文内容主要介绍如何使用VFP设计如下图所示的一个简易的计算器。

一、创建项目文件jsq.pjx
创建jsq文件夹:c:\jsq (以下文件均以此为存储目录)
在c:\jsq下创建项目文件:c:\jsq.pjx
二、创建表单jsq.scx
(一)创建表单jsq,并设置属性:设AutoCenter为“.T.”、ShowWindow为“作为顶层表单”
(二)在表单jsq内创建各对象
1、创建(菜单部分在后面创建)
单击“表单控件”工具栏上的“文本框”按钮,在表单上的适当位置单击。

并设置属性Alignment为“1-右”
2、创建容器控件
设置属性SpecialEffect为“凹下”
3、创建命令控件
更改属性Caption “Command1”为“Backspace”,属性ForeColor “0,0,0”为“255,0,0”
4、如同创建,创建其它控件。

单击表面空白部分,更改属性Caption “Form1”为“计算器”。

5、编辑各控件的命令代码
新建属性 ls 并改其属性“.F.”为“0”;新建属性 mm 并改其属性“.F.”为“0”。

(1)Backspace
双击Backspace控件,在打开的Command1.klick中编写如下代码:
thisform.text1.value=substr(alltrim(thisform.text1.value),1,len(alltrim(thisform.text1.value))-1)
(2)CE 的代码为:
thisform.text1.value=''
(3)C 的代码为:
thisform.text1.value=''
thisform.ls=0
thisform.tag=''
(4)MC 的代码为:
thisform.mm=0
(5)MR 的代码为:
thisform.text1.value=alltrim(str(thisform.mm))
(6)MS 的代码为:
thisform.mm=val(alltrim(thisform.text1.value))
(7)M+ 的代码为:
thisform.mm=thisform.mm+val(alltrim(thisform.text1.value)) (8)0 的代码为:
thisform.text1.value=thisform.text1.value+'0'
if alltrim(thisform.text1.value)='00'
thisform.text1.value='0'
endif
同理编写1、2、3、4、5、6、7、8、9 的代码。

(9)+ 的代码为:
thisform.ls=val(thisform.text1.value)
thisform.tag='1'
thisform.text1.value=''
同理编写-、 * 、/ 的代码
(10)=的代码为:
do case
case thisform.tag='1'
thisform.text1.value=alltrim(str(thisform.ls+val(thisform.text1.value),20,4)) case thisform.tag='2'
thisform.text1.value=alltrim(str(thisform.ls-val(thisform.text1.value),20,4)) case thisform.tag='3'
thisform.text1.value=alltrim(str(thisform.ls*val(thisform.text1.value),20,4)) case thisform.tag='4'
thisform.text1.value=alltrim(str(thisform.ls/val(thisform.text1.value),20,4)) endcase
(11)sqrt 的代码为:
thisform.text1.value=alltrim(str(sqrt(val(thisform.text1.value)),20,4))
(12)% 的代码为:
if thisform.tag='4'
thisform.text1.value=alltrim(str(thisform.ls/val(thisform.text1.value)*100,20,4)) endif
(13)1/x 的代码为:
thisform.text1.value=alltrim(str(1/val(thisform.text1.value),20,4))
(14)+/- 的代码为:
if substr(alltrim(thisform.text1.value),1,1)='-'
thisform.text1.value=substr(alltrim(thisform.text1.value),2) else
thisform.text1.value='-'+alltrim(thisform.text1.value) endif
(15).的代码为:
if at ('.',thisform.text1.value)=0
thisform.text1.value=thisform.text1.value+'.'
endif
三、创建程序jsq.prg
代码为:
set default to c:\jsq
do form jsq.scx
read events
并设置jsq.prg为主文件。

四、创建config.fpw
代码为:
screen=off
五、创建菜单jsq.mnx
(1)编辑子菜单的创建
(2)查看子菜单的创建
(3)帮助子菜单的创建
(4)生成jsq.mpr
(5)设置jsq.mnx属性,即选中“顶层表单”。

六、修改表单jsq.scx
(1)在Init事件中加入代码:
do jsq.mpr with this, .t.
(2)在Destroy事件中加入代码:
thisform.release
clear events
七、连编各文件。

合集下载

计算器制作步骤

计算器制作步骤
{
// TODO: Add your control notification handler code here
Calculate();
m_operator=OpSubtract;
}
void CCalculatorDlg::OnMutiply()//乘
{
// TODO: Add your control notification handler code here
{
// TODO: Add your control notification handler code here
Calculate();
m_operator=OpNone;
}
void CCalculatorDlg::OnSqrt()//处理开根号
{
// TODO: Add your control notification handler code here
FuncN, FuncRec, FuncExp, FuncNone};
(2)成员变量及函数(此处应定义为类CalculatorDlg的公有成员)
float m_operand; //存储当前输入的操作数
float m_accum; //存储当前的计算结果
BOOL m_bCoff; //标识当前输入是否是小数
if(!m_bOperandAvail)
m_operand=0;
if(!m_bCoff)
m_operand=m_operand*10+(iID-IDC_0);
else
{
m_operand=m_operand+(iID-IDC_0)*m_coff;
m_coff*=0.1;
}
m_bOperandAvail=TRUE;

VF编写简易计算器

VF编写简易计算器

(1)建⽴应⽤程序⽤户界⾯。

选择“新建”表单,进⼊表单设计器,增加⼀个⽂本框控件Textl、⼀个标签控件Label1和⼀个命令按钮组CommandGroup1,并将命令按钮组的ButtonCount属性改为16。

(2)设置对象属性如下表所⽰: CommandGroup1中各按钮的属性设置 对象属性属性值说明 Command1~Command10 Caption 依次改为:1、2、3、4、5、6、7、8、9、0 FontBold .T. Command11~Command10 Caption 依次改为:.、=、+、-、*、/ FontBold .T. (3)编写程序代码。

①编写CommandGroup1的Click事件代码: IF THISFORM.Tag=.T. THISFORM.Text1.Value=ALLT(RIGHT(STR(THIS.Value),1)) THISFORM.Tag=〃〃 ELSE a=THISFORM.Text1.Value THISFORM.Text1.Value=a+ALLT(RIGHT(STR(THIS.Value),1)) ENDIF ②编写“.”按钮Command11的Click事件代码: a=THISFORM.Text1.Value THISFORM.Text1.Value=a+〃.〃 ③编写“=”按钮Command12的Click事件代码: a=THISFORM.Text1.Value THISFORM.Text1.Value=ALLT(STR(&a)) THISFORM.Tag=.T. ④编写“+”按钮Command13的Click事件代码: a=THISFORM.Text1.Value THISFORM.Text1.Value=a+〃+〃 THISFORM.Tag=〃〃 ⑤编写“-”按钮Command14的Click事件代码: a=THISFORM.Text1.Value THISFORM.Text1.Value=a+〃-〃 THISFORM.Tag=〃〃 ⑥编写“*”按钮Command15的Click事件代码: a=THISFORM.Text1.Value THISFORM.Text1.Value=a+〃*〃 THISFORM.Tag=〃〃 ⑦编写“/”按钮Command16的Click事件代码: a=THISFORM.Text1.Value THISFORM.Text1.Value=a+〃+〃 THISFORM.Tag=〃〃。

vfp 设计一个表单 (计算器)

vfp 设计一个表单 (计算器)

设计一个表单,功能相当一个简单的计算器,可以进行加减乘除运算。

界面如下图:S1:新建表单,命名为jsq.scx。

表单的caption(标题)属性为“计算器”。

将表单适当拉长一些。

S2:在表单中添加一个文本框,其name属性为“aa”;Width属性为200。

S3:在表单中添加一个命令按钮command1,前景(ForeColor属性)色为“红”,caption为“+”。

(注意字符应为西文字符)S4:将按钮复制出三个,其caption分别为“-”、“*”、“/”。

S5:在表单中添加一个命令按钮command5,前景(ForeColor属性)色为“蓝”,caption为“1”。

S6:复制按钮,共12个。

将其余11个按钮的caption分别改为2、3、4、…、0、清零、关闭。

S7:添加按钮“1”的Click事件代码:THISFORM.aa.V alue= THISFORM.aa.V alue+”1”S8:其余2~0按钮的代码相似。

S9:添加按钮“结果”的Click事件代码:SS=THISFORM.aa.V alueTHISFORM.aa.V alue=STR(&ss,10,3)S10:添加按钮“清零”的Click事件代码:THISFORM.aa.V alue=Space(0)S10:添加按钮“退格”的Click事件代码:N=Len(THISFORM.aa.V alue)THISFORM.aa.V alue=Left(THISFORM.aa.V alue,n-1)S10:添加按钮“关闭”的Click事件代码:THISFORM.Release思考:Left(THISFORM.aa.V alue,n-1) 与Substr(THISFORM.aa.V alue,1,n-1)相同否?。

简易计算器的制作

简易计算器的制作

简易计算器的制作在本文中,我们将介绍如何使用Visual FoxPro(VFP)制作一个简易计算器。

Visual FoxPro是一种开发工具,可以用于创建数据库应用程序和开发Windows桌面应用程序。

步骤1: 创建新的Visual FoxPro项目首先,打开Visual FoxPro并创建一个新的项目。

在“文件”菜单中选择“新建”,然后选择“项目”。

输入一个项目名称,选择一个合适的位置,然后点击“确定”。

步骤2:创建一个新的表单接下来,我们需要创建一个新的表单来作为计算器的界面。

在项目资源管理器中,右键点击“表单”文件夹,并选择“新建”。

输入一个表单名称,然后点击“确定”。

步骤3:添加控件步骤5:添加按钮事件首先,我们需要声明变量来存储用户输入的数字。

在按钮事件代码中,添加以下代码:```foxproLOCAL num1, num2, result```接下来,我们需要获取用户输入的数字。

在按钮事件代码中,添加以下代码:```foxpronum1 = VAL(Thisform.txtNum1.Value)num2 = VAL(Thisform.txtNum2.Value)```然后,我们可以执行所需的计算操作。

例如,如果我们想要添加两个数字,我们可以使用以下代码:```foxproresult = num1 + num2```最后,我们需要将结果显示在界面上。

在按钮事件代码中,添加以下代码:```foxproThisform.lblResult.Caption = STR(result)```步骤6:运行和测试完成上述步骤后,您可以保存并运行计算器。

在VFP的工具栏中,点击“运行”按钮来启动应用程序。

测试计算器,确保它可以正确执行计算操作并显示结果。

结论通过使用Visual FoxPro,我们可以轻松创建一个简易计算器。

这个计算器可以执行基本的加减乘除等操作,同时提供了一个直观的用户界面。

您可以根据需要进行自定义,添加更多功能和复杂的计算操作。

利用VFP制作可设定时间的倒计时器

利用VFP制作可设定时间的倒计时器

利用VFP制作可设定时间的倒计时器作者:范春辉来源:《商情》2010年第28期[摘要]利用VFP软件中计时器控件及其他控件开发出可设定时间的倒计时器,并给出相应的源代码。

[关键词]VFP 可设定时间倒计时器1 前言VFP(即Vsiual Foxpro的简称)是在微型计算机上广泛使用的小型数据库管理系统,它以强大的功能,友好的界面,丰富完整的工具和高效的数据管理方式而受到用户的欢迎。

VFP提供了一个集成化的系统开发环境,把传统的命令方式执行方式扩充为以界面操作为主、以命令方式为辅的交互式执行方式;把单一的面向过程的结构化程序设计扩充为既有结构化、又有面向对象程序设计的可视化程序设计。

随着计算机的普及,VFP编程爱好者越来越多。

利用VFP中计时器控件制作倒计时器应用于各种比赛计时具有良好的效果,比如在各项演讲比赛、辩论赛等场合都会使用倒计时器。

2 界面概述该软件主要利用表单中的标签(Label)、按钮(CommandButton)、计时器(Timer)、文本框(TextBox)等控件来制作。

在程序的运行时,首先在文本框中输入要进行倒计时的时间再单击开始,否则提示重新输入;利用一个重置按钮可将程序整个运行过程重新开始,供多次重复使用。

同时,在进行到最后30秒时软件显示时间的字体会自动增大,以提示参与者时间。

3 窗体设计(如图一)图一(1)在属性窗口中设置Form的Picture属性来设置背景图片。

(2)添加两个文本框text1和text2,用来输入活动的倒计时时间(即分和秒)。

(3)添加5个标签控件,分别设置显示活动主题Label1的Caption为“希望之声”演讲赛、倒计时(Label2)、提示信息Label3的Caption为“请设置演讲时间”、活动时间显示Label4和Label5的Caption分别为“分”和“秒”。

(4)添加三个按钮,用作“开始”、“重置”、“退出”命令。

(5)设置一个timer控件,用来控制倒计时。

第3章VFP的编程工具与编程步骤

第3章VFP的编程工具与编程步骤

代码窗口
表单控件工具 栏 表单生成器
第3章 VFP的编程工具与编程步骤
3.2.3 “表单控件”工具栏
单击“表单设计器”工具栏上的“表单控件工具栏”
按钮,屏幕出现“表单控件”工具栏,可以把它拖放到 适当的位置。
第3章 VFP的编程工具与编程步骤
3.2.4 “属性”窗口
设计时,一般在“属性窗口”中修改或设置属性。 通过单击“表单设计器”工具栏中的“属性窗口” 按钮 ,可打开“属性”窗口。
第3章 VFP的编程工具与编程步骤
1. “对象”下拉列表框 标识当前选定的对象。单击右端的向下箭头,可 看到包括当前表单(或表单集)及其所包含的全部对 象的列表。可以从列表中选择要更改其属性的表单或 对象。
第3章 VFP的编程工具与编程步骤
2. 选项卡 选项卡中,按分类方式显示所选对象的属性、事件 和方法。 (1) “全部”选项卡:显示全部属性、事件和方法。
第3章 VFP的编程工具与编程步骤
3.4.3 控件的复制与删除
对控件进行复制与删除的常用方法有下面3种:
• 将所要操作的控件变为“活动控件”,按〈Ctrl〉
+〈C〉键将该控件拷贝到剪贴板中,按〈Ctrl〉+〈V〉
键可以在表单中得到该控件的复制品。对于活动控件,
只须按〈Delete〉键即可删除该控件。 • 用常用工具栏上的“复制”和“粘贴”按钮,以及 “剪切”按钮。 • 直接用鼠标右击要操作的控件,打开快捷菜单,在 快捷菜单中选取需要的项。
第3章 VFP的编程工具与编程步骤
3.2 表单设计器
3.2.1 打开表单设计器
打开表单设计器的方法有4种。 • 单击常用工具栏上的“新建”按钮,弹出“新建” 对话框,选中“表单”单选钮,单击“新建文件”。 • 在命令窗口中使用CREATE FORM命令。 • 在“项目管理器”的“文档”选项卡中,选中“表 单”,再单击“新建”按钮。

简易计算器的制作(VFP)

简易计算器的制作(VFP)第一步:建一个新的表单;自己规划出各个控件的布局,可以根据自己的喜好!第二步:编写属性和过程一是关于等号的过程编写和属性设置Thisform.Text4.Value=mand15.captionIf Thisform.Text3.Value=mand4.captiona=val(thisform.Text1.Value)b=val(thisform.Text2.Value)Thisform.Text2.Value=a+bThisform.Text3.Value=''endifIf Thisform.Text3.Value=mand8.captiona=val(thisform.Text1.Value)b=val(thisform.Text2.Value)Thisform.Text2.Value=a-bThisform.Text3.Value=''endifIf Thisform.Text3.Value=mand12.captiona=val(thisform.Text1.Value)b=val(thisform.Text2.Value)Thisform.Text2.Value=a*bThisform.Text3.Value=''endifIf Thisform.Text3.Value=mand16.captiona=val(thisform.Text1.Value)b=val(thisform.Text2.Value)Thisform.Text2.Value=a/bThisform.Text3.Value=''Endif属性可以不做更改因为只是更改控件的外观结束二是关于数字小数点的过程编写和属性设置(以“1”为例,其他类似)if Thisform.Text4.Value=mand15.captionThisform.Text4.Value=''Thisform.Text2.Value=''endifS=Thisform.Text2.ValueThisform.Text2.Value=Allt(THIS.CAPTION)Thisform.Text2.Value=S+allt(This.Caption)属性可以不做更改因为只是更改控件的外观结束三是运算符的过程编写和属性设置(以加号为例,其他类推)Thisform.Text1.Value=Thisform.Text2.ValueThisform.Text2.Value=''Thisform.Text3.Value=mand4.caption属性可不更该结束四是OFF ON的过程编写和属性设置OFF的过程编写clear eventsquitON的过程编写Thisform.Text1.Value=''Thisform.Text2.Value=''Thisform.Text3.Value=''Thisform.Text4.Value=''结束其中需要四个文本框有三个文本框属性设置运行不可见即可!作用只是做暂时的存取数据,如果可以调试前可使文本框均可见!即可明白……完……谢谢……。

使用VFP开发计算器程序

计算器开发
第一步:建立项目jsq , 可通过文件-新建-项目文件-新文件
或modi proj jsq
第二步:建立主表单jsq1 , 可通过Modi form jsq1
注意:
(1)在Form的Activate事件中加入如下启动事件语句(鼠标双击表单可进入如下界面):
(2) 在Form的QueryUnload事件中加入如下停止事件语句(鼠标双击表单可进入如下界面):
(3)设置图标,在表单Form的属性Icon中设置,如下图所示
(4)Form及控件的命令,一般设在Click事件中,请参看附件
第三步: 将表单加入到项目中(若已加入到项目中,可省略此步) 方法:在项目中,选择表单,单击添加,如下图所示:
第四步: 在项目中添加图标,若已完成可省略此步
第五步: 在项目中添加设置设置信息,若已完成可省略此步
(1)先设置信息, 在窗口命令中输入: Modi File Config.fpw 并回车
关闭保存
(2)添加设置,如下所示
第六步: 连编
第七步: 发布
将连编的程序与动态库发布即可。

零基础VB制作简易计算器教程

零基础VB制作简易计算器Feb. 16, 2014 by 王斌(华宁一中)作为一位初学者来说,VB这个东西似乎有些难(谁不难啊),但是仔细琢磨之后,又觉得和我们的生活密切相关。

我们可以使用它来制作一个简易的计算器哦!我自己大概只花了5~6天的时间来粗略地学习来一下简易计算器的制作,特在此和各位分享一下我的心得。

我也是第一次做这个东西,感觉编程序是那些高材生或技术人员才可以干的事情。

其实,你也可以当一次这样的技术人员(是不是感觉自己的档次提高了不少?哈哈!)。

特此申明:本人能力有限,所做的计算器只能进行如下运算加法:可连续相加9次减法:可连续相减9次乘法·除法各可运算1次我们先从基础的东西说起一、启动:1.“开始”按钮----“程序”----“Microsoft Visual Basic6.0中文版”2.选“新建”选项卡新建:建立新的工程现存:选择和打开现有的工程最新:最近使用过的工程3.单击“标准EXE”项,再单击“打开”按钮二、退出:在菜单文件(F)项中选“退出”或单击“关闭”按钮建立一个VB应用程序的一般步骤:1. 设计窗体,建立用户界面的对象;2. 设置各对象的属性;3. 为必要的对象进行事件过程的编程;4. 程序运行与调试;5. 保存文件和编译。

好,先来认识一下我们即将要用到的工具吧,下面的这个叫工具箱我们开始来制作它:一.显示屏和按键1.使用工具箱中右边的第二个按钮(文本框)在图1.2上拖出一个框,为Text12.然后,再使用工具箱中右边的第三个按钮(命令按钮)分别拖出你喜欢的形状(我认为还是正方形.长方形最好)电脑就会自动给它们编号mand2等。

此时,你使用鼠标左键单击它们中的任意一个,如:Command9.在右边的框中便会出现:(名称)Command9你找到Caption ,将Command9改写成你想要的数字你还可以设置一个清除键:clear。

加号减号乘号除号的制作方法也和其他按键一样的。

VB写简易计算器附图

用V B6.0编写简易计算器效果图:废话不多说,直接上步骤一、创建控件组1、创建控件组的方法??首先创建一个命令按钮,调整其大小(觉得合适就行),名称为Command1,Caption属性为数字 0 ;然后进行“复制”和“粘贴”,当选择“粘贴”时,出现对话框提示已有一个同名控件,询问是否创建控件组,选择“是”后,即创建了一个名为“Command”的控件组。

这时,第一个按钮的Index属性值默认为“0”,第二个的Index属性值自动设为“1”,并且大小与第一个按钮相同,只需修改其 Caption 属性为数字“1”并将其拖至合适位置即可。

此后继续使用“粘贴”的方法建立其他控件组中其余按钮,共20个按钮,每建立一个,就将它拖到合适处,并修改相应的Caption属性值。

二、编写代码Dim s1 As Single, s2 As Single, ysf As String'定义两个单精度数变量用与存放参与运算的数,一个字符型存放运算符Private Sub Command1_Click(Index As Integer)Text1.Text = Text1.Text & Command1(Index).Caption'将command1的单击事件与文本框显示的内容连接End SubPrivate Sub Command2_Click()Text1.Text = Text1.Text + "."If (InStr(Text1.Text, ".") = 1) Then'第一位不能为小数Text1.Text = ""End IfIf InStr(Text1.Text, ".") < Len(Text1.Text) Then '防止出现两个小数点Text1.Text = Left(Text1.Text, Len(Text1.Text) - 1)End IfEnd SubPrivate Sub Command3_Click()s2 = Val(Text1.Text) '开始加减乘除运算Select Case ysfCase "+"Text1.Text = s1 + s2Case "-"Text1.Text = s1 - s2Case "*"Text1.Text = s1 * s2Case "/"If s2 = 0 ThenMsgBox "分母不能为零!"Text1.Text = ""ElseText1.Text = s1 / s2End IfEnd SelectText1 = IIf(Left(Text1.Text, 1) = ".", 0 & Text1.Text, Text1.Text) '这个很关键,如果没有这个的话,得出小于1的小数前面没有0End SubPrivate Sub Command4_Click()If Text1.Text = "" Then '文本为空就结束Exit SubEnd IfText1.Text = Left(Text1.Text, Len(Text1.Text) - 1) '文本退一格End SubPrivate Sub Command5_Click()Text1.Text = "" '清除当前框内文本End SubPrivate Sub Command6_Click(Index As Integer)s1 = Val(Text1.Text) '将s1隐藏起来ysf = Command6(Index).CaptionText1.Text = ""End SubPrivate Sub Command7_Click()If Left(Text1.Text, 1) <> "-" Then '判断作为负数Text1.Text = "-" & Text1.TextElseText1.Text = Right(Text1.Text, Len(Text1.Text) - 1)End IfEnd SubPrivate Sub Command8_Click()Text1.Text = Text1.Text * Text1.Text '平方End Sub各位朋友,可以将红色代码复制到相应位置,不清楚的可以全选复制,但是一定要按照我的步骤和给的名称来哦!还可以再添加按钮Private Sub Command9_Click() '这是退出代码EndEnd Sub三、测试,成功的话给个好评哦!谢谢各位下载与支持!这个可以编写作为作业哦!。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档