那位哥哥,姐姐有计算器和五子棋的c#程序和源代码发给小弟,小弟不胜感激;
邮箱yuanquan0104@
计算器: using System; using System.Windows.Forms; using System.Drawing;
public class win:Form {
Button[] b = new Button[10]; Button bDot,bPlus,bSub,bMul,bDiv,bEqu,bClr; Panel panCalc; TextBox txtCalc; Double dblAcc; Double dblSec; bool blnClear,blnFrstOpen; String strOper; public win() { try { this.Text="Calculator"; panCalc=new Panel(); txtCalc = new TextBox();
txtCalc.Location = new Point(10,10); txtCalc.Size=new Size(150,10); txtCalc.ReadOnly=true; txtCalc.RightToLeft=RightToLeft.Yes; panCalc.Size=new Size(200,200); panCalc.BackColor=Color.Aqua; panCalc.Controls.Add(txtCalc); addButtons(panCalc); this.Size=new Size(200,225); this.Controls.Add(panCalc); dblAcc=0; dblSec=0; blnFrstOpen=true; blnClear=false; strOper=new String('=',1); } catch (Exception e) { Console.WriteLine("error ...... " + e.StackTrace); } } private void addButtons(Panel p) { for (int i=0;i<=9;i++) { b[i]=new Button(); b[i].Text=Convert.ToString(i); b[i].Size=new Size(25,25); b[i].BackColor=Color.White; b[i].Click+=new EventHandler(btn_clk); p.Controls.Add(b[i]); } b[0].Location=new Point(10,160); b[1].Location=new Point(10,120); b[4].Location=new Point(10,80); b[7].Location=new Point(10,40); b[2].Location=new Point(50,120); b[5].Location=new Point(50,80); b[8].Location=new Point(50,40); b[3].Location=new Point(90,120); b[6].Location=new Point(90,80); b[9].Location=new Point(90,40); bDot=new Button(); bDot.Size=new Size(25,25); bDot.Location=new Point(50,160); bDot.BackColor=Color.White; bDot.Text="."; bDot.Click+=new EventHandler(btn_clk); bPlus=new Button(); bPlus.Size=new Size(25,25); bPlus.Location=new Point(130,160); bPlus.BackColor=Color.White; bPlus.Text="+"; bPlus.Click+=new EventHandler(btn_Oper); bSub=new Button(); bSub.Size=new Size(25,25); bSub.Location=new Point(130,120); bSub.BackColor=Color.White; bSub.Text="-"; bSub.Click+=new EventHandler(btn_Oper); bMul=new Button(); bMul.Size=new Size(25,25); bMul.Location=new Point(130,80); bMul.BackColor=Color.White; bMul.Text="*"; bMul.Click+=new EventHandler(btn_Oper); bDiv=new Button(); bDiv.Size=new Size(25,25); bDiv.Location=new Point(130,40); bDiv.BackColor=Color.White; bDiv.Text="/"; bDiv.Click+=new EventHandler(btn_Oper); bEqu=new Button(); bEqu.Size=new Size(25,25); bEqu.Location=new Point(90,160); bEqu.BackColor=Color.White; bEqu.Text="="; bEqu.Click+=new EventHandler(btn_equ); bClr=new Button(); bClr.Size=new Size(20,45); bClr.Location=new Point(170,40); bClr.BackColor=Color.Orange; bClr.Text="AC"; bClr.Click+=new EventHandler(btn_clr);
p.Controls.Add(bDot); p.Controls.Add(bPlus); p.Controls.Add(bSub); p.Controls.Add(bMul); p.Controls.Add(bDiv); p.Controls.Add(bEqu); p.Controls.Add(bClr); } private void btn_clk(object obj,EventArgs ea) { if(blnClear) txtCalc.Text=""; Button b3=(Button)obj; txtCalc.Text+=b3.Text; if (txtCalc.Text==".") txtCalc.Text="0."; dblSec=Convert.ToDouble(txtCalc.Text); blnClear=false; } private static void Main() { Application.Run(new win()); } private void btn_Oper(object obj,EventArgs ea) { Button tmp=(Button)obj; strOper=tmp.Text; if (blnFrstOpen) dblAcc=dblSec; else calc();
blnFrstOpen=false; blnClear=true; }
private void btn_clr(object obj,EventArgs ea) { clear(); }
private void btn_equ(object obj,EventArgs ea) { calc(); } private void calc() {
switch(strOper) { case "+": dblAcc+=dblSec; break; case "-": dblAcc-=dblSec; break; case "*": dblAcc*=dblSec; break; case "/": dblAcc/=dblSec; break; } strOper="="; blnFrstOpen=true; txtCalc.Text=Convert.ToString(dblAcc); dblSec=dblAcc; } private void clear() { dblAcc=0; dblSec=0; blnFrstOpen=true; txtCalc.Text=""; txtCalc.Focus();
} }