摘要:簡易型計算機 vb and c#
如果你不是第一次到這個頁面來,會發現本來除了程式碼什麼也沒有,現在多了這些文字敘述。
這個範例的主要目的不是要做一個計算機,
本來只是想用最簡單的方法教朋友程式入門,
順便把程式碼放在這裡簡單分享,也是備忘,
沒想到貼上來後發現有不少人找VB程式找到這裡來,
那就再補上這一段文字說明了。
這一段是寫給沒學過任何程式語言的朋友看的:
寫程式有的時候只是因為不知道從何下手,所以入門比較難,
但事實上因為開發環境漸趨成熟,輔助工具齊全,絕對比一般人想像的簡單。
一般電腦書籍大都是先介紹開發環境、解說控制項、指令...等等,
這樣循序漸進雖然比較完整,但也因為較枯燥,造成入門障礙。
我試了一下,在VB2005的環境下,完全不用到任何專業基礎,
10分鐘內就可以寫好一個簡易型的計算機的程式。
以下是建立本程式的步驟:
先開啟一個Windows應用程式專案。
把Button從工具列拉過來Form1裡面,這個就是Button1,把Button1的屬性Text改為"1"。
把這個Button1複製9個新的出來並稍做排列,依次把Text屬性改為"2","3","4"..."9","0"。
選取這10個Button,在屬性視窗Click這個事件後面的空白點兩下。
再把Button從工具列拉過來Form1裡面,這個就是Button11,把Button11的屬性Text改為"+"。
把這個Button11複製3個新的出來並稍做排列,依次把Text屬性改為"-","*","/"。
選取這4個Button,在屬性視窗Click這個事件後面的空白點兩下。
再把Button從工具列拉過來Form1裡面,這個就是Button15,把屬性Text改為"="。
選取這個Button,在屬性視窗Click這個事件後面的空白點兩下。
再把Button從工具列拉過來Form1裡面,這個就是Button16,把屬性Text改為"AC"。
選取這個Button,在屬性視窗Click這個事件後面的空白點兩下。
m 是用來放 + - * / 的,
aa是用來記住按下+ - * / 之前使用者輸入的內容,應該很容易懂,
比較一下你的程式碼跟下面的程式,
把程式碼放進去,好了,就這樣,你會寫程式了。
VB:
Public Class Form1
Dim m As String
Dim aa As String
Private Sub ButtonNumber_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click, Button9.Click, Button8.Click, Button7.Click, Button6.Click, Button5.Click, Button4.Click, Button3.Click, Button10.Click, Button1.Click
Dim b As Button = sender
TextBox1.Text = TextBox1.Text + b.Text
End Sub
Private Sub ButtonM_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button11.Click, Button14.Click, Button13.Click, Button12.Click
Dim mb As Button = sender
m = mb.Text
aa = TextBox1.Text
TextBox1.Text = ""
End Sub
Private Sub Button15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button15.Click
Dim a As Single = Val(aa)
Dim b As Single = Val(TextBox1.Text)
Dim c As Single
Select Case m
Case "+"
c = a + b
Case "-"
c = a - b
Case "*"
c = a * b
Case "/"
c = a / b
End Select
TextBox1.Text = c
End Sub
Private Sub Button16_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button16.Click
TextBox1.Text = ""
End Sub
End Class
C#:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace WindowsApplication1
{
public partial class Form1 : Form
{
String aa;
String m;
public Form1()
{
InitializeComponent();
}
private void buttonNumber_Click(object sender, EventArgs e)
{
Button b = sender as Button;
textBox1.Text += b.Text;
}
private void buttonM_Click(object sender, EventArgs e)
{
Button mb = sender as Button;
m = mb.Text;
aa = textBox1.Text;
textBox1.Text = "";
}
private void button15_Click(object sender, EventArgs e)
{
Double a = Double.Parse(aa);
Double b = Int32.Parse(textBox1.Text);
Double c = 0;
switch (m)
{
case "+":
c = a + b;
break;
case "-":
c = a - b;
break;
case "*":
c = a * b;
break;
case "/":
c = a / b;
break;
}
textBox1.Text = c.ToString();
}
private void button16_Click(object sender, EventArgs e)
{
textBox1.Text = "";
}
}
}