找回密码
 立即注册
查看: 4390|回复: 69

[脚本] 游戏中怎么弹出按钮啊

[复制链接]
发表于 2013-8-20 15:22 | 显示全部楼层 |阅读模式
我想写个脚本,就是按下ESC键之后弹出一个退出按钮。自己写了一个。。。不知到哪里错了啊{:5_390:}
function OnGUI()
{
   if(Input.GetKeyDown(KeyCode.Escape))
   {
    if( GUI.Button(Rect(0,0,200,100),"退出"))
      {
     Application.Quit();
      }
   }
}
这个代码没有报错,但是运行后按ESC并没有出现按钮,但如果把5~8行改成 print(“退出”); 却可以输出退出这个字符串。
说一下我的检测吧,因为以前没学过JS,都是现在按逻辑关系猜得代码,发现即使把5~8行换成GUI.Button(Rect(0,0,200,100),"she"); 也不会出现按钮。。{:soso_e117:} 0,0,200,100这个坐标检测了,在界面内没问题,但是按钮怎么没出现呢?
发表于 2013-8-20 22:13 | 显示全部楼层
        function OnGUI() {

                if (GUI.Button(Rect(10,70,50,30),"Click"))
                        Debug.Log("Clicked the button with text");
        }

点评

你这是?什么意思哦,没看明白,是在回答我的问题吗?  详情 回复 发表于 2013-8-20 23:40
 楼主| 发表于 2013-8-20 23:40 | 显示全部楼层
小米 发表于 2013-8-20 22:13
function OnGUI() {

                if (GUI.Button(Rect(10,70,50,30),"Click"))

你这是?什么意思哦,没看明白,是在回答我的问题吗?

点评

if(Input.GetKeyDown(KeyCode.Escape))判断是否按下了ESC,只有当ESC按下的瞬间才返回True, 执行if中的语句。所以,要实现你所要的效果,需要一个外部变量来记录是否按下了ESC,然后再通过该变量来执行if中的语句。  详情 回复 发表于 2013-8-26 01:49
发表于 2013-8-26 01:49 | 显示全部楼层
战斧 发表于 2013-8-20 23:40
你这是?什么意思哦,没看明白,是在回答我的问题吗?

if(Input.GetKeyDown(KeyCode.Escape))判断是否按下了ESC,只有当ESC按下的瞬间才返回True, 执行if中的语句。所以,要实现你所要的效果,需要一个外部变量来记录是否按下了ESC,然后再通过该变量来执行if中的语句。
发表于 2013-9-2 17:32 | 显示全部楼层
我感到一是把down改成UP试试,还有查一下INPUT设置问题,我也是才学,不对之处望见谅。
发表于 2017-3-18 21:13 | 显示全部楼层
楼主是超人
发表于 2017-3-18 21:21 | 显示全部楼层
顶顶多好
发表于 2017-3-18 21:58 | 显示全部楼层
很好哦
发表于 2017-3-18 21:23 | 显示全部楼层
不错不错
发表于 2017-3-18 21:25 | 显示全部楼层
LZ真是人才
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-26 12:53 , Processed in 0.111037 second(s), 28 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表