您的位置:首页 > 移动开发 > Unity3D

unity3d 脚本基础认识3-动态产生GUI

2012-04-15 23:49 309 查看
动态产生GUI(2D表层接口)

要动态产生的GUI都必需写在

function OnGUI ( ) { }里面

在这function内越晚产生的GUI会在越上层

标签GUI

GUI.Label (Rect(X,Y,width,height), “文字” , GUIStyle("textfield"));

Rect(X,Y,width,height) 的( X,Y) 請參考 脚本基础认识2 ~ 坐标~动态产生GUI

贴图GUI

GUI.DrawTexture(Rect(0 ,0 ,Screen.width ,Screen.height), 图文件, 缩放模式, true, 0);

缩放模式 (ScaleMode) 3种

ScaleMode.StretchToFill 拉扯图片填满Rect

ScaleMode.ScaleAndCrop 缩放图片,保持长宽比,用长宽较小的值对齐Rect长宽,图会被切割

ScaleMode.ScaleToFit 缩放图片,保持长宽比,用长宽较大的值对齐Rect长宽

按钮GUI (按下后放开才执行)

If ( 动态产生GUI.Button ){ 执行内容;}

脚本中动态产生GUI.Button的格式

GUI..Button(Rect(X,Y,width,height),”文字”) ~ 只有文字的

GUI..Button(Rect(X,Y,width,height), 图文件 ) ~ 只有图片的

GUI..Button(Rect(X,Y,width,height), “ ”, GUIStyle) ~ 按钮状态切换图片

例:var ID : GUIStyle = GUIStyle();

ID.normal.background = 图0; ~ 平常时按钮显示 图0

ID.hover.background = 图1; ~ 鼠标光标停留时显示 图1

ID.active.background = 图2; ~ 按钮被按下时显示 图2

If (GUI..Button(Rect(X,Y,width,height), “ ”, ID )){ 执行内容;}

执行内容 可參考 脚本基础认识1 ~ Transform

文章摘抄自:http://www.unity3d8.com/content/%E8%84%9A%E6%9C%AC%E5%9F%BA%E7%A1%80%E8%AE%A4%E8%AF%863-%E5%8A%A8%E6%80%81gui
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: