01. GUIContent

1.GUIContent简介


1.GUIContent简介

csharp 复制代码
GUIContent是Unity引擎专门用于封装"GUI控件显示内容的核心类", 它就像一个"内容打包器", 能把文本, 图标(纹理), 鼠标

悬停提示这三类信息整合在一起
csharp 复制代码
using UnityEngine;

public class GUIContentDemo : MonoBehaviour
{
    // 可在Inspector面板中赋值的图标纹理
    public Texture2D btnIcon;

    void OnGUI()
    {
        // 1. 仅包含文本的GUIContent(最基础用法)
        GUIContent textOnlyContent = new GUIContent("普通按钮");
        if (GUI.Button(new Rect(20, 20, 120, 40), textOnlyContent))
        {
            Debug.Log("点击了仅文本的按钮");
        }

        // 2. 包含文本+图标+提示的GUIContent(完整用法)
        GUIContent fullContent = new GUIContent(
            "设置按钮",    // text:按钮文字
            btnIcon,       // image:按钮图标
            "点击打开设置面板"  // tooltip:悬停提示
        );
        if (GUI.Button(new Rect(20, 70, 120, 40), fullContent))
        {
            Debug.Log("点击了带图标和提示的按钮");
        }

        // 3. 动态修改GUIContent的属性
        GUIContent dynamicContent = new GUIContent();
        dynamicContent.text = "动态文本标签";
        dynamicContent.tooltip = "这是动态设置的提示";
        GUI.Label(new Rect(20, 120, 120, 40), dynamicContent);
    }
}
相关推荐
小贺儿开发20 分钟前
Unity3D 图片循环查看器
unity·工具·图片·列表·循环·ugui·互动
是果果呀儿7 小时前
Vuforia实现物体旋转、移动、缩放
unity·增强现实
不知名的老吴10 小时前
Unity3D 2022安装教程及全流程下载步骤指南
unity·游戏引擎
Thomas_YXQ10 小时前
Unity3D Addressable 深度优化热更性能消耗
开发语言·3d·unity·微信
程序员也有头发10 小时前
如何使用AI工具开发Unity
unity·游戏引擎·ai编程
隔窗听雨眠10 小时前
从零开始的游戏开发入门指南
unity
sinat_3845031111 小时前
【无标题】
unity·webgl
隔窗听雨眠12 小时前
Unity与Simulink联合仿真:实现无人机目标追踪系统
unity·无人机·cocos2d·simulink
winlife_12 小时前
全程用 AI 做一款商业级手游 · EP10 道具系统:让三个按钮真正改变棋盘
windows·算法·unity·ai编程·游戏开发·mcp·玩法系统
游乐码1 天前
Unity基础(十二)资源异步加载
unity·游戏引擎