C# 当我按下按钮时,如何使GUI弹出?
我想知道,每当我点击一个按钮时,如何使用onClick()或类似工具来创建GUI弹出窗口?这是我目前的代码。我正在尝试将代码实现到我的商店脚本中。玩家将按下的按钮是一个显示store的按钮。当玩家按下名为Store的按钮时,脚本将显示实际的商店。商店不是一个单独的场景。在一个场景中C# 当我按下按钮时,如何使GUI弹出?,c#,unity3d,unity5,C#,Unity3d,Unity5,我想知道,每当我点击一个按钮时,如何使用onClick()或类似工具来创建GUI弹出窗口?这是我目前的代码。我正在尝试将代码实现到我的商店脚本中。玩家将按下的按钮是一个显示store的按钮。当玩家按下名为Store的按钮时,脚本将显示实际的商店。商店不是一个单独的场景。在一个场景中 using UnityEngine; using System.Collections; public class Shop : MonoBehaviour { public int Money
using UnityEngine;
using System.Collections;
public class Shop : MonoBehaviour
{
public int Money;
public int Trap = 0;
public int Weed = 0;
public GameObject ShopLocation;
void Start ()
{
Money = 100;
ShopLocation.gameObject.SetActive(false);
}
public void Clicked()
{
}
void OnTriggerExit()
{
ShopLocation.gameObject.SetActive(false);
}
public void trap()
{
if (Money >= 20) {
Money -= 20;
Trap += 15;
} else
{
print ("Not enough money for trap!");
}
}
public void weed()
{
if (Money >= 15) {
Money -= 15;
Weed += 10;
} else
{
print ("Not enough money for Weed!");
}
}
}
该组件可用于执行此操作。使用按钮.onClick.AddListener(()=>functionToCall()…)
注册到按钮
事件
请记住,您必须从编辑器中创建一个按钮
,并将其分配给脚本中的StoreButton
插槽。您还应该将单击按钮
时要显示的UI放入ShoptShow
窗口
Unity UI供您使用。该组件可用于执行此操作。使用按钮.onClick.AddListener(()=>functionToCall()…)
注册到按钮
事件
请记住,您必须从编辑器中创建一个按钮
,并将其分配给脚本中的StoreButton
插槽。您还应该将单击按钮
时要显示的UI放入ShoptShow
窗口
Unity UI为您准备。@MethodMan“在谷歌上搜索如何动态创建表单实例以及如何显示表单”这是Unity。他说的是Unity用户界面。@MethodMan“在谷歌上搜索如何动态创建表单实例以及如何显示表单”,这就是Unity。他说的是Unity用户界面。我把它添加到我的脚本中。我无法将按钮添加到脚本中。这是我当前的代码。您不能将按钮添加到脚本是什么意思?将
Shop
脚本附加到场景中的游戏对象。进入GameObject->UI->Button,创建一个UI按钮。现在,将新创建的按钮拖动到附加到游戏对象的脚本中…我忘记添加游戏对象,这就是原因。我将其添加到脚本中。我无法将按钮添加到脚本中。这是我当前的代码。您不能将按钮添加到脚本是什么意思?将Shop
脚本附加到场景中的游戏对象。进入GameObject->UI->Button,创建一个UI按钮。现在,将新创建的按钮拖动到附加到游戏对象的脚本中……我忘记添加游戏对象,这就是原因。
using UnityEngine.UI;
public class Shop : MonoBehaviour
{
public GameObject shopToShow;
public Button StoreButton;
void OnEnable()
{
//Register Button Events
StoreButton.onClick.AddListener(() => storeButtonCallBack());
}
private void storeButtonCallBack()
{
Debug.Log("Shop Button Clicked!");
shopToShow.SetActive(true);
}
void OnDisable()
{
//Un-Register Button Events
StoreButton.onClick.RemoveAllListeners();
}
}