VB设计“加减乘除计算器”谢谢大家,计算器最好是带负数和小数的。。。。

来源:百度知道 编辑:UC知道 时间:2024/06/05 21:03:09
四、主要技术问题的描述:
① 连续输入新操作数的若干个数字时,应采用
txtDisplay.Text =txtDisplay.Text & Format$(Index)
txtDisplay.Text = txtDisplay.Text & cmdNumber(Index).Caption
txtDisplay.Text = txtDisplay.Text & Index
② 对于正整数运算单击操作符会结束本操作数的输入,需设置一个逻辑变量,使其逻辑值为true ,准备新操作数的输入。
③ 当一个对象(本题指文本框)具有焦点时,在键盘上按键操作触发下面事件过程:
Private Sub Form_KeyPress(KeyAscii As Integer),在该过程中调用
txtDisplay_KeyPress KeyAscii
根据KeyAscii对应的字符,调用相应过程。
④ 当用户在拥有焦点的对象上释放键时触发下面事件过程:
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)在该过程中调用txtDisplay_KeyUp KeyCode, Shift
KeyUp 事件可应用于大多数键,但最经常地还是应用于功能键、组合键、区别数字小键盘和常规数字键等。
根据KeyCode代码对应的常数调用对应过程。 KeyCode代码常数可以在vb帮助系统或vb对象浏览器中的对象库中查到。
① 在窗体上分别创建用于0-9个操作数字和+、-、*、/运算符号的控件数组,并创建用于显示操作数、运算结果的文本框及其它控件。
② 单击数字控件数组元素时,先判断参加运算的数是否是新的操作数,用以确定单击数字键后数字在文本框中的显示方式,如果是新的操作数如234,那么连续单击2,3,4数字键,在文本框中会显示234 。
③ 单击操作符,结束第一个操作数的输入,同时把第一个操作数存储到一个全局变量中(如:StoredValue),记下操作符的index值,并做好开始输入下一个操作数的准备。
④ 单击等号(=),结束第二个操作数的输入并存储,根据上面记下的in

设置按键
Command1
Index 0――16

Index 0――9 Caption=“0”-“9”

Index 10 Caption=“.”

Index 11Caption=“=”

Index 12 Caption=“+”

Index 13 Caption=“-”

Index 14 Caption=“×”

Index 15 Caption=“÷”

Index 16 Caption=“清除”

先在General里声明窗体级全局变量:

Dim Num1, Num2 As Single
Dim StrNum1, StrNum2 As String
Dim FirstNum As Boolean '判断是否是数字开头

在Form_Load事件里给变量初赋值:

Num1 = 0
Num2 = 0
StrNum1 = ""
StrNum2 = ""
FirstNum = True

因为17个按钮使用的是同一事件,所以我们用一个Select Case语句区分各个按钮,双击任意按钮输入代码:

Private Sub Command1_Click(Index As Integer)

Select Case Index

Case 0 To 9

If FirstNum Then

StrNum1 = Str(Index)’实型转字符型
FirstNum = False’初赋值为假

Else’非初赋值

StrNum1 = StrNum1 + Str(Index)

End If

Text1.Text = StrNum1’显示

<还有其他语句