【Unity3D入门教程】Unity3D之GUI浅析「建议收藏」

【Unity3D入门教程】Unity3D之GUI浅析「建议收藏」一款典型的软件都会有交互界面,这些界面包括标签、按钮、拖动条等。Unity3D内置一些基本的GUI命令,可以在屏幕上绘制简单的交互控件。本文主要介绍传统的GUI。而最新加入的UGUI模块将在下一讲中介绍。

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

前言

一款典型的软件都会有交互界面,这些界面包括标签、按钮、拖动条等。Unity3D内置一些基本的GUI命令,可以在屏幕上绘制简单的交互控件。本文主要介绍传统的GUI。而最新加入的UGUI模块将在下一讲中介绍。

 

1  Label控件

Label控件可以将字符串信息展示在游戏界面上。

GUI.Label(new Rect(10,10,100,30),"学习GUI");//将字符串显示在屏幕上


 

2  Button控件

Button生成一个按钮,可以检测用户鼠标点击。

if(GUI.Button(newRect(10,200,100,30),"普通按钮"))
{
   Debug.Log("按下了按钮。");
}
if (GUI.RepeatButton(new Rect(10, 250, 100,30), "连续按钮"))
{
   Debug.Log("正在按按钮!");
}

 

3  TextField文本输入框

可以输入文字等,如用户名和密码。

editName = GUI.TextField(new Rect(150, 40,200, 30), editName, 15);
editPassword = GUI.PasswordField(newRect(150,80,200,30),editPassword,"*"[0],15);

 

4  Slider滑动条

滑动条上的滑块位置可以表明对应的数值。

toolBarValue0 = GUI.VerticalSlider(newRect(200,200,30,100),toolBarValue0,100,0);
toolBarValue1 = GUI.HorizontalSlider(newRect(200,180,100,30),toolBarValue1,0,100);  

 

5  GUI中绘制贴图

GUI.DrawTexture(newRect(10,50,100,80),tex);  //绘制贴图

运行效果

【Unity3D入门教程】Unity3D之GUI浅析「建议收藏」

完整脚本

using UnityEngine;
using System.Collections;

public class StudyGUI : MonoBehaviour {

    public Texture tex;
    string editName;
    string editPassword;
    float toolBarValue0;
    float toolBarValue1;

    void Start()
    {
        editName = "请输入用户名";
        editPassword = "请输入密码";
        toolBarValue0 = 0;
        toolBarValue1 = 0;
    }


    void OnGUI()
    {
        GUI.Label(new Rect(10,10,100,30),"学习GUI"); //将字符串显示在屏幕上
      
        GUI.DrawTexture(new Rect(10,50,100,80),tex);  //绘制贴图

        //检测按钮
        if(GUI.Button(new Rect(10,200,100,30),"普通按钮")) 
        {
            Debug.Log("按下了按钮。");
        }
        //检测连续按钮
        if (GUI.RepeatButton(new Rect(10, 250, 100, 30), "连续按钮"))
        {
            Debug.Log("正在按按钮!");
        }

        //设置文本输入框
        editName = GUI.TextField(new Rect(150, 40, 200, 30), editName, 15);
        editPassword = GUI.PasswordField(new Rect(150,80,200,30),editPassword,"*"[0],15);
        //垂直和水平滑动条
        toolBarValue0 = GUI.VerticalSlider(new Rect(200,200,30,100),toolBarValue0,100,0);
        toolBarValue1 = GUI.HorizontalSlider(new Rect(200,180,100,30),toolBarValue1,0,100);     
    }
}

小结

本文介绍了几种最简单的GUI控件的使用方法,其他的控件如ToolBar、ScrollView等没有介绍到,感兴趣的读者可以在掌握本文讲述的基本控件的基础上,继续深入研究其他控件。当然现在很多开发中,这种基本的GUI已经用得不多了,UGUI是新一代的交互方式,具有更加灵活的使用情境,值得继续探究。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/169343.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • sql数据库unique的用法_mysql中的date数据类型

    sql数据库unique的用法_mysql中的date数据类型摘自帮助:uniqueidentifier全局唯一标识符(GUID)。注释uniqueidentifier数据类型的列或局部变量可用两种方法初始化为一个值:使用NEWID函数。将字符串常量转换为如下形式(xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx,其中每个x是0-9或a-f范围内的一个十六进制的数字)。例如,6F9619FF-8B86-D011-B…

  • 连接本地数据库和远程连接他人数据库?

    连接本地数据库和远程连接他人数据库?新装navicat如何连接本地数据库?1是localhost,2是127.0.0.1言简意赅:本地数据库IP一般是127.0.0.12.连接之后3.,来验证一下是不是你的数据库。4.输入密码后回车,进入5.showdatabases;回车经验证,无误。———————————————–…

  • Mybatis常见面试题总结

    Mybatis常见面试题总结

  • [转载]interp1「建议收藏」

    [转载]interp1「建议收藏」MATLAB中的插值函数为interp1,其调用格式为:yi=interp1(x,y,xi,’method’)其中x,y为插值点,yi为在被插值点xi处的插值结果;x,y为向量,’method’表示采用的插值方法,MATLAB提供的插值方法有几种:’method’是最邻近插值,’linear’线性插值;’spline’三次样条插值;’cub…

  • Antd的table筛选,表头columns的filters过滤清空

    Antd的table筛选,表头columns的filters过滤清空Form+Table实现了自定义筛选菜单的功能。具体可以参考https://ant.design/components/table-cn/#components-table-demo-custom-filter-panel。但是此功能会有bug:选择相应的搜索条件后,点击“搜索”按钮,Table会渲染相应的数据,且Table表头也有自带的过滤功能(实际上是column的filters属性起的作用);然后再点击“清除”按钮,所有的搜索条件和表头里filters过滤的条件都要被清除。但是Ta.

  • 微信第三方开发者答网友问 微信创业靠谱吗

    微信第三方开发者答网友问 微信创业靠谱吗一、基础常识1、所谓的第三方开发,就是腾讯公众平台内开放的开发者模式。用户可以根据个人不同的需求开发不同的功能。2、开发模式后,有两个需要我们去填写的东西:一个是ur,一个是token;简单的解释一下就是:url地址,第三方平台的地址;token是通往地址的接口。3、第三方的开发什么?就是一些功能模块。第三方是一个平台,微信公众平台管理也是一个平台。而url就是一个一条链接

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号