標簽:Label1
命令按鈕:
名字?標題值
Cback?←
清楚嗎?英國國教會
Cstart?C
Csin?犯罪
Ccos?因為
Csqrt?平方根計算
Csign?+/-
Cpoint?Cpoint
Cequal?=
控件數組:(命令按鈕)
Calcu(1)+
Calcu)
加爾各答(3)*
calc(4)/
Cnum(0)?0
Cnum(1)?1
...
Cnum(9)?九
然後在代碼窗口中編寫源代碼:
選項?明確的
暗淡?Num1,?Num2?作為?兩倍
暗淡?PointIn?作為?布爾代數學體系的
暗淡?輸入?作為?布爾代數學體系的
暗淡?操作1?作為?整數
私人?Sub?Calcu_Click(我?作為?整數)
如果?輸入?=?假的?然後呢?自提交上壹個操作後,沒有輸入新數據。
操作1?=?' I '操作員重置
Num1?=?Label1?將顯示列中的數據賦給第壹個操作數。
退出?潛水艇
結束?如果
輸入?=?“False”將當前狀態設置為非輸入數據階段。
如果?Num1?& lt& gt?0?然後呢?非首次計算
Num2?=?Label1?將顯示列中的數據賦給第二個操作數。
算算?(Operation1)'計算前壹個操作並顯示結果。
Else的首次計算
Num1?=?Label1?將顯示列中的數據賦給第壹個操作數。
結束?如果
操作1?=?' I '提交操作員
結束?潛水艇
私人?Sub?Cback_Click()
暗淡?泰倫。作為?整數
泰倫。=?Len(標簽1)
如果?泰倫。& gt?2?然後
如果?右(Label1,?1)?=?"."?然後
Label1?=?左(Label1,?泰倫。-?2)?& amp?"."
其他
Label1?=?左(Label1,?泰倫。-?1)
結束?如果
其他
Cclear_Click
結束?如果
結束?潛水艇
私人?Sub?Cclear_Click()
Label1?=?"0."
Num2?=?0
PointIn?=?錯誤的
結束?潛水艇
私人?Sub?Ccos_Click()
算算?(6)
輸入?=?錯誤的
結束?潛水艇
私人?Sub?Cequal_Click()
如果?輸入?然後呢?如果數據剛剛輸入'或?操作1?& gt?0?然後
Num2?=?Label1 '將顯示列中的數據賦給第二個操作數。
結束?如果
輸入?=?“False”將當前狀態設置為非輸入數據階段。
算算?(Operation1)'計算提交的操作並顯示結果。
Num1?=?0
操作1?=?0
結束?潛水艇
私人?Sub?計算(Oprt?作為?整數)
選擇?案子?Oprt
案子?1
Num1?=?Num1?+?Num2
ShowResult?(Num1)
案子?2
Num1?=?Num1?-?Num2
ShowResult?(Num1)
案子?三
Num1?=?Num1?*?Num2
ShowResult?(Num1)
案子?四
Num1?=?Num1?/?Num2
ShowResult?(Num1)
案子?五
Num2?=?標簽1
Num1?=?Sin(Num2)
ShowResult?(Num1)
案子?六
Num2?=?標簽1
Num1?=?Cos(Num2)
ShowResult?(Num1)
案子?七
Num2?=?標簽1
Num1?=?Sqr(數字2)
ShowResult?(Num1)
結束?挑選
結束?潛水艇
私人?Sub?ShowResult(編號?作為?雙倍)
如果?Num?=?Fix(Num)?“Then”整數
Label1?=?Num?& amp?"."
埃爾瑟夫?左(Num,1)?=?"."?然後呢?第壹個字符是小數點。
Label1?=?"0"?& amp?數字
埃爾瑟夫?左(Num,2)?=?"-."?然後呢?前兩個字符是“-”
Label1?=?"-0."?& amp?右(CStr(Num),?Len(CStr(Num))?-?2)
其他
Label1?=?數字
結束?如果
結束?潛水艇
私人?Sub?Cnum_Click(索引?作為?整數)
NumInput?(索引)
結束?潛水艇
私人?Sub?Cpoint_Click()
如果?輸入?=?假的?然後
Label1?=?"0."
輸入?=?真實的
結束?如果
PointIn?=?真實的
結束?潛水艇
私人?Sub?Csign_Click()
如果?Label1?& lt& gt?"0."?然後
暗淡?StrTemp?作為?線
StrTemp?=?標簽1
如果?左(StrTemp,1)?=?"-"?然後
Label1?=?右(StrTemp,?Len(StrTemp)?-?1)
其他
Label1?=?"-"?& amp?StrTemp
結束?如果
結束?如果
結束?潛水艇
私人?Sub?Csin_Click()
算算?(5)
輸入?=?錯誤的
結束?潛水艇
私人?Sub?Csqrt_Click()
暗淡?x?作為?長的
x?=?標簽1
如果?x?& gt=?0?然後
算算?(7)
其他
Label1?=?“錯誤!”
結束?如果
輸入?=?錯誤的
結束?潛水艇
私人?Sub?Cstart_Click()
Label1?=?"0."
Num1?=?0
Num2?=?0
PointIn?=?錯誤的
輸入?=?真實的
操作1?=?0
結束?潛水艇
私人?Sub?Form_KeyDown(鍵碼?作為?整數,?移位?作為?整數)
Cequal。SetFocus
如果?鍵碼?=?46?然後呢?按Del鍵。
Cclear_Click
結束?如果
結束?潛水艇
私人?Sub?Form_KeyPress(KeyAscii?作為?整數)
選擇?案子?凱亞西
鍵入壹個數字:
案子?48?去哪?57
NumInput?(KeyAscii?-?48)
案子?46?小數點
Cpoint_Click
類型運算符:
案子?43?加號
Calcu_Click?(1)
案子?45?減號
Calcu_Click?(2)
案子?42?乘法符號
Calcu_Click?(3)
案子?47?除號
Calcu_Click?(4)
案子?27?重新開始(退出鍵)
Cstart_Click
案子?8?退格
Cback_Click
案子?13?等於(回車鍵)
Cequal_Click
結束?挑選
結束?潛水艇
私人?Sub?Form_Load()
我。Top?=?(屏幕。身高?-?我。身高)?/?2
我。向左?=?(屏幕。寬度?-?我。寬度)?/?2
我。關鍵評論?=?真實的
Cstart_Click
結束?潛水艇
私人?Sub?NumInput(n?作為?整數)
如果?Len(Label1)?& gt?15?然後
退出?潛水艇
結束?如果
如果?輸入?=?假的?然後
Cclear_Click
Label1?=?n?& amp?"."
輸入?=?真實的
埃爾瑟夫?Label1?& lt& gt?"0."?然後
如果?右(Label1,?1)?=?"."?然後
如果?PointIn?=?假的?然後
暗淡?泰倫。作為?整數
泰倫。=?Len(標簽1)
Label1?=?左(Label1,?泰倫。-?1)
Label1?=?Label1?& amp?n?& amp?"."
其他
Label1?=?Label1?& amp?n
結束?如果
其他
Label1?=?Label1?& amp?n
結束?如果
其他
如果?PointIn?然後
Label1?=?Label1?& amp?n
其他
Label1?=?n?& amp?"."
結束?如果
結束?如果
結束?Sub?
註意:如圖所示,
我依次給妳解釋壹下:頂部模擬顯示屏的控件是Label1,下面的控件都是命令按鈕:第壹排的三個按鈕←、CE、C的名稱分別是Cback、Cclear、Cstart分別是;第二行的SIN、COS、SQRT的名字分別是:Csin、Ccos、Csqrt分別是;所有下列數字0,1,2,...,9是壹個控件數組,類型也是命令按鈕,名字是Cnum,下標索引分別是0,1,2,...,9,分別與它們所代表的數字壹壹對應;四個運算符+、-、*、/也是命令按鈕的數組,名為Calcu,下標分別為1、2、3、4;最下面壹行的+/1、小數點和=的名稱分別是:Csign、Cpoint和Cequal。只要將代碼復制到我為您編寫的代碼窗口中。