Unity3D学习之UI系统——GUI

文章目录

  • 1. 前言
  • 2. 工作原理和主要作用
  • 3. 基础控件
    • 3.1 重要参数及文本和按钮
      • 3.1.1 GUI 共同点
      • 3.1.2 文本控件
      • 3.1.3 按钮控件
    • 3.2 多选框和单选框
      • 3.2.1 多选框
      • 3.2.2 单选框
      • 3.2.3 输入框
      • 3.2.4 拖动条
    • 3.3 图片绘制和框
      • 3.3.1 图片
      • 3.3.2 框绘制
  • 4 工具栏和选择网格
    • 4.1 工具栏
    • 4.2 选择网格
  • 5 滚动列表和分组
    • 5.1 分组
    • 5.2 滚动列表
  • 6 窗口
    • 6.1 模态窗口
    • 6.2 拖动窗口
  • 7 自定义皮肤样式
    • 7.1 全局颜色
    • 7.2 整体皮肤样式
  • 8 GUILayout自动布局
    • 8.1 自动布局
    • 8.2 布局选项
  • 9 必备知识点
  • 10 九宫格布局概念


1. 前言

在这里插入图片描述在这里插入图片描述
设置Screen Type和Center Type

最终实现效果:
在这里插入图片描述

2. 工作原理和主要作用

在这里插入图片描述
在这里插入图片描述

3. 基础控件

3.1 重要参数及文本和按钮

3.1.1 GUI 共同点

在这里插入图片描述

3.1.2 文本控件

在这里插入图片描述
在这里插入图片描述

可以传图片
在这里插入图片描述
在这里插入图片描述

在unity中拖入图片
在这里插入图片描述
可以把Rect 设置成public 的变量,在控件中设置
在这里插入图片描述

在这里插入图片描述
文字和图片均显示
在这里插入图片描述
在这里插入图片描述

toolTip 获取当前选中的空间的附带信息
在这里插入图片描述
GUI Style 控制样式
在这里插入图片描述

3.1.3 按钮控件

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述在这里插入图片描述
在这里插入图片描述
必须要按下并抬起才算被点击

在这里插入图片描述
长按按钮

3.2 多选框和单选框

3.2.1 多选框

在这里插入图片描述
Toggle因为返回的是bool值,所以一定要在OnGUI外面生成bool值
在这里插入图片描述
变成这样
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
false时显示Normal
在这里插入图片描述
在这里插入图片描述

true时显示On Normal
在这里插入图片描述
在这里插入图片描述

3.2.2 单选框

在这里插入图片描述
通过一个int 标识表示是否显示

在这里插入图片描述

3.2.3 输入框

在这里插入图片描述

在这里插入图片描述

3.2.4 拖动条

在这里插入图片描述

在这里插入图片描述

3.3 图片绘制和框

3.3.1 图片

在这里插入图片描述

在这里插入图片描述

3.3.2 框绘制

在这里插入图片描述
在这里插入图片描述

4 工具栏和选择网格

4.1 工具栏

在这里插入图片描述

这种类似的
在这里插入图片描述

在这里插入图片描述
可以根据返回索引处理不同的逻辑
在这里插入图片描述

4.2 选择网格

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

5 滚动列表和分组

5.1 分组

在这里插入图片描述
包裹着他的所有控件的位置,只要移动Group的位置,包裹的所有控件的位置就会改变
包裹只Begin到End之间的所有控件
在这里插入图片描述

在这里插入图片描述
移动groupPos

在这里插入图片描述

5.2 滚动列表

在这里插入图片描述
拖动列表条

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

scPos是这个滚动组件的位置
nowPos是滚动条的变量
showPos 组件内容的尺寸
如果里面内容的宽高小于组件内容的尺寸,则不会出现滚动条,如果大于了就会出现
在这里插入图片描述
在这里插入图片描述

6 窗口

在这里插入图片描述

在这里插入图片描述
在函数里添加配件
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

6.1 模态窗口

在这里插入图片描述
相当于警告窗口,这个窗口一出来点其他按钮都没有用了

6.2 拖动窗口

在这里插入图片描述

在这里插入图片描述
函数如果填了,就是只能拖这部分才能拖动

7 自定义皮肤样式

7.1 全局颜色

自定义的style也会受影响

在这里插入图片描述
在这里插入图片描述

7.2 整体皮肤样式

在这里插入图片描述

Skin就是多个GUI的Style的综合体

可以自己创建skin文件,然后编辑赋值给GUI.skin

8 GUILayout自动布局

8.1 自动布局

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

8.2 布局选项

在这里插入图片描述

9 必备知识点

编辑模式下让指定代码执行
加上[ExecuteAlways]

在这里插入图片描述

10 九宫格布局概念

在这里插入图片描述

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/242635.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年网络安全比赛--内存取证(超详细)

一、竞赛时间 180分钟 共计3小时 二、竞赛阶段 竞赛阶段 任务阶段 竞赛任务 竞赛时间 分值 1.从内存文件中找到异常程序的进程,将进程的名称作为Flag值提交; 2.从内存文件中找到黑客将异常程序迁移后的进程编号,将迁移后的进程编号作为Flag值提交; 3.从内存文件中找到受害者…

【Docker篇】详细讲解容器相关命令

🎊专栏【Docker】 🍔喜欢的诗句:更喜岷山千里雪 三军过后尽开颜。 🎆音乐分享【如愿】 🎄欢迎并且感谢大家指出小吉的问题🥰 文章目录 🛸容器🌹相关命令🍔案例⭐创建并运…

【C++】文件操作

文件操作 一、文本文件(一)写文件读文件 二、二进制文件(一)写文件(二)读文件 程序运行时产生的数据都属于临时数据,程序一旦运行结束都会被释放,通过文件可以将数据持久化&#xff…

SQL注入实战:盲注

盲注: 1、当攻击者利用SQL注入漏洞进行攻击时,有时候web应用程序会显示,后端数据库执行SQL查询返回的错误信息,这些信息能帮助进行SQL注入,但更多时候,数据库没有输出数据web页面,这是攻击者会…

【设计模式】责任连模式怎么用?

我将通过一个贴近现实的故事——请假审批流程,带你了解和掌握责任链模式。 什么是责任链模式? 责任链模式是一种行为设计模式,它让你可以避免将请求的发送者与接收者耦合在一起,让多个对象都有处理请求的机会将这个对象连成一条…

SpringMVC传递数据给前台

SpringMVC有三种方式将数据提供给前台 第一种 使用Request域 第二种 使用Model(数据默认是存放在Request域中) 与第一种方式其实是一致的 第三种 使用Map集合(数据默认是存放在Request域中)

力扣刷MySQL-第五弹(详细讲解)

🎉欢迎您来到我的MySQL基础复习专栏 ☆* o(≧▽≦)o *☆哈喽~我是小小恶斯法克🍹 ✨博客主页:小小恶斯法克的博客 🎈该系列文章专栏:力扣刷题讲解-MySQL 🍹文章作者技术和水平很有限,如果文中出…

Django随笔

关于Django的admin 1. 在url中把 from django.contrib import admin 重新解开 把path(admin/,admin.site.urls), 解开 2. 注册app,在配置文件中写 django.contrib.admin, 3.输入命令进行数据库迁移 Django国际化 配置文件中(改成中文) LA…

linux LPT和COM回路测试(基于python+Qt+C++)

软件UI: 回路治具&#xff08;COMLPT&#xff09;&#xff1a; lpt_test.cpp&#xff08;c 源代码&#xff09;&#xff1a; #include <iostream> #include <fstream> #include <sstream> #include <unistd.h> #include <fcntl.h> #include <…

【cucumber】cluecumber-report-plugin生成测试报告

cluecumber为生成测试报告的第三方插件&#xff0c;可以生成html测报&#xff0c;该测报生成需以本地json测报的生成为基础。 所以需要在测试开始主文件标签CucumberOptions中&#xff0c;写入生成json报告。 2. pom xml文件中加入插件 <!-- 根据 cucumber json文件 美化测…

ckman:非常好用的ClickHouse可视化集群运维工具

概述 什么是ckman ckman&#xff0c;全称是ClickHouse Management Console&#xff0c; 即ClickHouse管理平台。它是由擎创科技数据库团队主导研发的一款用来管理和监控ClickHouse集群的可视化运维工具。目前该工具已在github上开源&#xff0c;开源地址为&#xff1a;github…

YOLOv8改进 | Conv篇 | 在线重参数化卷积OREPA助力二次创新(提高推理速度 + FPS)

一、本文介绍 本文给大家带来的改进机制是一种重参数化的卷积模块OREPA,这种重参数化模块非常适合用于二次创新,我们可以将其替换网络中的其它卷积模块可以不影响推理速度的同时让模型学习到更多的特征。OREPA是通过在线卷积重参数化(Online Convolutional Re-parameteriza…

2024最新 8 款电脑数据恢复软件推荐分享

数据恢复是一个涉及从设备硬盘驱动器检索已删除文件的过程。这可能需要存储在工作站、笔记本电脑、移动设备、服务器、相机、闪存驱动器上的数据——任何在独立或镜像/阵列驱动器上存储数据的东西&#xff0c;无论是内部还是外部。 在某些情况下&#xff0c;文件可能被意外或故…

Pytest 测试框架与Allure 测试报告——Allure2测试报告-L3

目录&#xff1a; allure2报告中添加附件-图片 Allure2报告中添加附件Allure2报告中添加附件&#xff08;图片&#xff09;应用场景Allure2报告中添加附件&#xff08;图片&#xff09;-Python代码示例&#xff1a;allure2报告中添加附件-日志 Allure2报告中添加附件&#xff…

GEE:随机森林回归器投票方法的优化与修改

作者:CSDN @ _养乐多_ 在随机森林中,随机生成的每棵决策树都对输入数据进行分类或回归,并产生一个输出。对于分类问题,这个输出通常是一个类别标签 ,而对于回归问题,输出通常是一个连续的数值。例如,如果有五棵树的分类输出为 [0.1, 0.2, 0.3, 0.1, 0.1],则平均数是0.…

SpringBoot SaToken Filter如用使用ControllerAdvice统一异常拦截

其实所有的Filter都是一样的原理 大致流程: 创建一个自定义Filter, 用于拦截所有异常此Filter正常进行后续Filter调用当调用后续Filter时, 如果发生异常, 则委托给HandlerExceptionResolver进行后续处理即可 以sa-token的SaServletFilter为例 首先注册SaToken的过滤器 pac…

【51单片机】矩阵按键

0、前言 参考&#xff1a;普中 51 单片机开发攻略 1、硬件 2、软件 main.c #include <reg52.h> #include <intrins.h> #include "delayms.h"typedef unsigned int u16; //对数据类型进行声明定义 typedef unsigned char u8; #define GPIO_KEY P1 #d…

ADSelfService Plus 推出离线多因素身份验证以提升远程工作安全性

采用先进验证方法&#xff0c;确保在任何时间、地点或连接问题下对业务数据的合法访问即使远程用户未连接到身份验证服务器或互联网&#xff0c;也可通过MFA安全认证。 MFA 得克萨斯州德尔瓦雷 — 2023年5月3日 — Zoho Corporation 旗下的企业IT管理部门ManageEngine今日宣布…

web渗透安全学习笔记:2、HTML基础知识

目录 前言 HTML的标题 段落链接与插入图片 HTML元素 HTML属性 HTML头部 HTML与CSS HTML与JavaScript 表格与列表 HTML区块 布局 HTML表单 HTML与数据库 音频与视频 HTML事件 前言 HTML的标题 <!DOCTYPE html> <html> <head> <meta chars…

《WebKit 技术内幕》之七(3): 渲染基础

3 渲染方式 3.1 绘图上下文&#xff08;GraphicsContext&#xff09; 上面介绍了WebKit的内部表示结构&#xff0c;RenderObject对象知道如何绘制自己&#xff0c;但是&#xff0c;问题是RenderObject对象用什么来绘制内容呢&#xff1f;在WebKit中&#xff0c;绘图操作被定…