Unity3d 简单计算器(OnGUI)

using UnityEngine;
using System.Collections;

public class JiSuanQi : MonoBehaviour {
 
 //用来显示结果
 public string strJieguo="0";
 //第一个操作数
 public static string str1;
 //第二个操作数
 public static string str2;
 //标记符号
 public static string str0pt;
 //计算结果
 float sum=0;

 void OnGUI(){
  //对数字进行处理
  if (GUI.Button(new Rect(0,0,50,30),"1")) {
   str1+="1";
   strJieguo = str1;
  }
  if (GUI.Button(new Rect(60,0,50,30),"2")) {
   str1+="2";
   strJieguo = str1;
  }
  if (GUI.Button(new Rect(120,0,50,30),"3")) {
   str1+="3";
   strJieguo = str1;
  }
  if (GUI.Button(new Rect(180,0,50,30),"4")) {
   str1+="4";
   strJieguo = str1;
  }
  if (GUI.Button(new Rect(0,40,50,30),"5")) {
   str1+="5";
   strJieguo = str1;
  }
  if (GUI.Button(new Rect(60,40,50,30),"6")) {
   str1+="6";
   strJieguo = str1;
  }
  if (GUI.Button(new Rect(120,40,50,30),"7")) {
   str1+="7";
   strJieguo = str1;
  }
  if (GUI.Button(new Rect(180,40,50,30),"8")) {
   str1+="8";
   strJieguo = str1;
  }
  if (GUI.Button(new Rect(0,80,50,30),"9")) {
   str1+="9";
   strJieguo = str1;
  }
  if (GUI.Button(new Rect(60,80,50,30),"0")) {
   str1+="0";
   strJieguo = str1;
  }
  //计算符号
  if (GUI.Button(new Rect(120,80,50,30),"+")) {
   str0pt="+";
   print(str2);
   if (str1!=null) {
    str2=str1;
   }
   str1="";
   strJieguo=str2;
  }
  if (GUI.Button(new Rect(180,80,50,30),"/")) {
   str0pt="/";
   if (str1!=null) {
    str2=str1;
   }
   str1="";
   strJieguo=str2;
  }
  if (GUI.Button(new Rect(0,120,50,30),"*")) {
   str0pt="*";
   if (str1!=null) {
    str2=str1;
   }
   str1="";
   strJieguo=str2;
  }
  if (GUI.Button(new Rect(60,120,50,30),"-")) {
   str0pt="-";
   if (str1!=null) {
    str2=str1;
   }
   str1="";
   strJieguo=str2;
  }
  if (GUI.Button(new Rect(0,160,50,30),"C")) {
   if (str1=="") {
    strJieguo="0";
    return;
   }else{
    str1=str1.Substring(0,str1.Length-1);
   }
   strJieguo=str1;
  }
  if (GUI.Button(new Rect(120,120,50,30),"=")) {
   if (str0pt=="+") {
    sum=float.Parse(str2)+float.Parse(str1);
   }else if (str0pt=="-") {
    sum=float.Parse(str2)-float.Parse(str1);
   }else if (str0pt=="*") {
    sum=float.Parse(str2)*float.Parse(str1);
   }else if (str0pt=="/") {
    sum=float.Parse(str2)/float.Parse(str1);
   }
  
   str2=sum.ToString();
   str1="";
   strJieguo=sum.ToString();
  }
  if (GUI.Button(new Rect(180,120,50,30),"CE")) {
   str1="";
   str1="";
   sum=0;
   strJieguo="";
  }
  GUI.Label (new Rect (300, 0, 100, 30), strJieguo);
 }
}

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值