unity制作简易计算器
时间: 2023-05-20 17:02:51 浏览: 132
可以使用Unity中的GUI实现一个简易计算器。首先,需要创建一个新的场景,并在场景中创建一个空对象,命名为“Calculator”。然后,在“Calculator”对象上添加一个GUI Text组件,用于显示计算结果。接下来,创建一个新的脚本,命名为“CalculatorScript”,并将其附加到“Calculator”对象上。
在“CalculatorScript”中,需要定义一些变量,如当前输入的数字、运算符、计算结果等。然后,需要编写一些函数,如输入数字、输入运算符、清除输入、计算结果等。最后,在OnGUI函数中,使用GUILayout组件创建一个简易的计算器界面,并将输入的数字和运算符传递给相应的函数进行处理,最终将计算结果显示在GUI Text组件中。
以下是一个简单的计算器脚本示例:
```
using UnityEngine;
using System.Collections;
public class CalculatorScript : MonoBehaviour {
private string input = "";
private string operation = "";
private float result = 0.0f;
void Start () {
}
void Update () {
}
void OnGUI () {
GUILayout.Label(result.ToString());
GUILayout.BeginHorizontal();
if (GUILayout.Button("1")) {
input += "1";
}
if (GUILayout.Button("2")) {
input += "2";
}
if (GUILayout.Button("3")) {
input += "3";
}
if (GUILayout.Button("+")) {
operation = "+";
result = float.Parse(input);
input = "";
}
GUILayout.EndHorizontal();
GUILayout.BeginHorizontal();
if (GUILayout.Button("4")) {
input += "4";
}
if (GUILayout.Button("5")) {
input += "5";
}
if (GUILayout.Button("6")) {
input += "6";
}
if (GUILayout.Button("-")) {
operation = "-";
result = float.Parse(input);
input = "";
}
GUILayout.EndHorizontal();
GUILayout.BeginHorizontal();
if (GUILayout.Button("7")) {
input += "7";
}
if (GUILayout.Button("8")) {
input += "8";
}
if (GUILayout.Button("9")) {
input += "9";
}
if (GUILayout.Button("*")) {
operation = "*";
result = float.Parse(input);
input = "";
}
GUILayout.EndHorizontal();
GUILayout.BeginHorizontal();
if (GUILayout.Button("0")) {
input += "0";
}
if (GUILayout.Button("C")) {
input = "";
operation = "";
result = 0.0f;
}
if (GUILayout.Button("=")) {
if (operation == "+") {
result += float.Parse(input);
}
else if (operation == "-") {
result -= float.Parse(input);
}
else if (operation == "*") {
result *= float.Parse(input);
}
input = "";
}
if (GUILayout.Button("/")) {
operation = "/";
result = float.Parse(input);
input = "";
}
GUILayout.EndHorizontal();
}
}
```
将此脚本附加到“Calculator”对象上,然后运行场景即可看到一个简易的计算器界面。
阅读全文