亲身开发一个Windows软件4.3 (实现自动判断反向计算)

接下来,我们在上一次的基础上进一步完善程序,让它实现反向计算

分析

反向计算,首先要先知道用户到底要算什么,是长,宽,还是面积,如果用户输入了数据,那么就代表他知道这个数据了,就不是计算这个。而用户不知道的数据,就只能空着,所以说,我只需要判断哪个ComboBox空着,就知道用户要求的数据了。之后,再根据不同的情况,每种情况对应执行不同的代码。

实现

在VB中,要实现判断,就需要用到If语句,格式是

If条件名称Then
符合此条件执行的代码
ElseIf条件名称Then
符合此条件执行的代码
.....
Else
如果不符合以上倩况,执行的代码
End If

其中,If是必备的,要判断之前要有一个条件。剩下的可选,如果要判断多种条件就在后面接着加Elself,最后的Else也是可选的,如果上述条件都不满足要执行什么。如果你不写代码,VB默认直接跳过。这个条件就是一个关系表达式。在这里,我们我们要判断三种情况,分别是长宽面积,所以我们要用一个If和两个Else%根据前面的分析,我们要判断Combox是不是空着。ComboBox是控件,空着就代表它的Text属性为",也就是空,如果Combox的Text属性就是”‘,那么就可以说它是空着的。而Combox的Text属性就可以认为是关系表达或关系表达式和日常思维一样,写法就是

值关系运算符值

比如,表示Combo4是空的,就用

Combo4.Text=""

当然,这个是关系表达式,不是给控件的属性赋值,需要套入If语句使用。这也是VB中的不严谨,在其他大多数语言中,关系运算符和赋值运算符是不一样的。

这样,当Combo4是空着的时候,就知道用户要求长。长=面积除以宽,把前面的内容套用迸来,就是

If Combo4.Text = "" Then
    Combo4.Text = Combo6.Text/Combo4.Text

剩下的以此类推,最后把前面讲过的历史记录的三行加上

最终代码

Private Sub Command1_Click()
    If Combo4.Text = "" Then
        Combo4.Text = Combo6.Text / Combo5.Text    
    ElseIf Combo5.Text = "" Then
        Combo5.Text = Combo6.Text / Combo4.Text
    ElseIf Combo6.Text = "" Then
        Combo6.Text = Combo4.Text * Combo5.Text
    End If
    Combo4.AddItem Combo4.Text
    Combo5.AddItem Combo5.Text
    Combo6.AddItem Combo6.Text
End Sub

总结与预告

本节学习了If语句和关系表达式,下一节我们不写代码了,讲讲实现单位计算的算法,这个算法是这个软件相对于其他计算器的一个特点,所以我用1篇单独讲解。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值