Unity3d脚本15:GUI风格设置类GUIStyle

GUIStyle类

    GUIStyle类GUI元素的风格位置,这个类包含一个GUI元素如何被渲染的所有信息。它包含用于字体,图标位置,背景图标,和间距的信息。它不包含关于它包含什么的信息 – 仅仅定义用这个风格渲染的文本如何被显示。它不定义这个元素可以发生什么交互,但是定义了用于交互的显示设置。

    一个GUIStyle的设置。这是模仿一个CSS样式。它包含下列事项的设置:

    背景图片

    这些被渲染在空间后面。不同的图像可以被指定为正常显示。当用户将鼠标放在元素上时的显示,当使用者按下选择 – 以及当元素被打开,如触发按钮,下面的这些都被称为风格的状态。参见:normal, hover, active, onNormal, onHover, onActive – 这些包含每个状态的背景图片,文本颜色属性。

    文本渲染

    这个风格都可以定义一个字体渲染,以及文本对齐,换行和剪裁的设置,它也定了该风格元素不同状态的文本颜色参考 : font, alignment, wordWrap, normal, hover, active, onHover, onActive

    图标位置

    GUIStyle可以渲染文本,图标或者两者兼而有之。GUIStyle定义渲染时这两者间的相关位置(这可以强制它只显示他们其中之一)。参见:imagePosition

    尺寸和间距选项

    GUIStyle包含填充,边缘和边界。这些不严格地对应类似命名的CSS属性。一个GUIStyle可以选择的定义一个固定的宽度和高度。参见:margin, padding, border, fixedWidth, fixedHieght

    变量

    ◆ var active : GUIStyleState    //   描述:空间被按下时的渲染设置。

    ◆ var alignment : TextAnchor    //     描述:文本对齐

    ◆ var border : RectOffset    //     描述:所有背景图片的边界。 这个对应于GUITexture的边界设置。它只影响渲染的背景图像,不影响定位。

    ◆ var clipOffset : Vector2    //     描述:用于该GUIStyle内容的剪裁偏移。

    ◆ var clipping : TextClipping    //   描述:当渲染的内容相对于给定的区域太大时做什么

    ◆ var contentOffset : Vector2     //    描述:用于该GUIStyle内容的像素偏移。

    ◆ var fixedHeight : float    //     描述:如果非0,任何用这个风格渲染的GUI元素将有这里指定的高度。

    ◆ var fixedWidth : float    //     描述:如果非0,任何用这个风格渲染的GUI元素将有这里指定的宽度。

    ◆ var focused : GUIStyleState    //     描述:元素获得键盘焦点时的渲染设置。

    ◆ var font : Font    //     描述:用于渲染的字体。如果null,当前的GUISkin的默认字体将被使用。

    ◆ var hover : GUIStyleState    //     描述:鼠标悬停在控件时的渲染设置。

    ◆ var imagePosition : ImagePosition    //     描述:GUIContent的图片和文本如何组合。

    ◆ var lineHeight : float     //     描述:这个风格一行文本的高度。以像素为单位。(只读)

    ◆ var margin : RectOffset    //     描述:以这种风格渲染的元素和任何其他GUI元素之间的边界。 这个只影响自动布局。(参见 : GUILayout)

    ◆ var name : string    //     描述:GUIStyle的名称。用来基于名称获取它们。

    ◆ var normal : GUIStyleState    //     描述:组建正常显示是渲染设置。

    ◆ var onActive : GUIStyleState    //     描述:元素被打开并具有键盘焦点时的渲染设置。

    ◆ var onFocused : GUIStyleState    //     描述:元素被打开并被按下时的渲染设置。

    ◆ var onHover : GUIStyleState    //     描述:控件被打开并且鼠标悬停在它上面时的渲染设置

    ◆ var onNormal : GUIStyleState    //     描述:控件被打开时的渲染设置。

    ◆ var overflow : RectOffset    //     描述:添加到背景图片的额外间距。这可用于如果你的图片要投射一个阴影,并且向扩展背景图片超出使用这个风格的制定GUI元素的矩形时。

    ◆ var padding : RectOffset    //     描述:从GUIStyle边界到内容开始的间距

    ◆ var stretchHeight : bool    //     描述:这个风格的GUI元素可以被垂直拉伸以便更好的布局么?

    ◆ var stretchWidth : bool    //     描述:这个风格的GUI元素可以被水平拉伸以便更好的布局么?

    ◆ var wordWrap : bool    //     描述:文本换行?  这将导致任何包含的文本被换行以便适应控件的宽度。

    构造函数

    ◆ static function GUIStyle() : GUIStyle    //    描述:

    ◆ static function GUIStyle(other:GUIStyle) : GUIStyle    //     描述:

    函数

    ◆ function CalcHeight(content : GUIContent, width : float) : float    //     描述:当渲染content并制定width时这个元素的高度。

    ◆ function CalcMinMaxHeight (content : GUIContent, outminWidth : float, outmaxWidth : float) : void    //     描述:计算以这个风格渲染的content的最大最小宽度。 被GUILayout使用来正确处理换行。

    ◆ function CalcScreenSize(contentSize : Vector2) : Vector2    //     描述:计算用这个风格格式化的元素的尺寸,和一个给定的内容空格。

    ◆ function CalcSize(content : GUIContent) : Vector2    //     描述:如果内容使用这个风格渲染,计算某些内容的尺寸。这个函数不考虑换行。要做到这点,你需要确定宽度,然后打调用CalcHeight分配计算出wordwrapped高度。

    ◆ function Draw(position : Rect, isHover: bool, isActive : bool, on : bool, hasKeyboardFocus : bool) : void    //     描述:

    ◆ function Draw(position : Rect, text : string, isHover: bool, isActive : bool, on : bool, hasKeyboardFocus : bool) : void    //     描述:用GUIStyle绘制一个文本字符串。

    ◆ function Draw(position : Rect, image : Texture, isHover: bool, isActive : bool, on : bool, hasKeyboardFocus : bool) : void    //     描述:用GUIStyle绘制图片。如果图片太大,它将被缩小。

    ◆ function Draw(position : Rect, content : GUIContent, isHover: bool, isActive : bool, on : bool, hasKeyboardFocus : bool) : void    //     描述:用GUIStyle绘制文本和图片。如果图片太大,它将被缩小。

    ◆ function Draw(position : Rect, content : GUIContent, controlID : int, on : bool = false) : void    //     描述:GUI代码中使用的主要绘制函数。

    ◆ function DrawCursor(position : Rect, content : GUIContent, controlID : int, Character : int) : void    //     描述:用选定的内容绘制这个GUIStyle

    ◆ function DrawWithTextSelection(position : Rect, content : GUIContent, controlID : int, firstSelectedCharacter : int, lastSelectedCharacter : int) : void    //     描述:用选定的内容绘制这个GUIStyle

    ◆ function GetCursorPixelPosition(position : Rect, content : GUIContent, cursorStringIndex : int) : Vector2    //     描述:获取给定字符串索引的像素位置。

    ◆ function GetCursorStringIndex(postion : Rect, content : GUIContent, cursorPixelPosition : Vector2) : int    //     描述:当用户在cursorPixelPosition处点击时获取光标位置(索引到内容文本)这部计算内容中任何图片。

    类变量

    ◆ static var none : GUIStyle    //     描述:空GUIStyle的快捷方式。 这个风格不包含装饰而仅仅以缺省字体渲染所有东西。

     function OnGUI()
     {  
      GUI.Button(“I’m very bare”, GUIStyle.none);    //制作一个没有装饰的按钮
    }

    类方法

    ◆ static implicit function GUIStyle(str : string) : GUIStyle    //     描述:从当前皮肤获取一个名为GUI风格。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值