Slider控件、Scrollbar控件、ScrollView控件、Window窗口、GUISkin控件样式

来源:互联网 发布:文华模型源码 编辑:程序博客网 时间:2024/05/06 14:23

Slider控件:

var hSliderValue : float = 0.0;//水平滑动条数值

var vSliderValue : float = 0.0;//垂直滑动条数值
function OnGUI(){
   hSliderValue = GUI.HorizontalSlider(Rect(50,25,100,30),hSliderValue,0.0,10.0);
   GUI.Label(Rect(25,22,100,30),hSliderValue.ToString("0.00"));//显示水平滑动条数值
  
   vSliderValue = GUI.VerticalSlider(Rect(50,70,30,100),vSliderValue,0.0,10.0);
   GUI.Label(Rect(22,170,100,30),vSliderValue.ToString("0.00"));//显示垂直滑动条数值

}


Scrollbar控件:用于页面区域的滚动,列如文档浏览中

var hSbarValue : float ;
var vSbarValue : float;
function OnGUI(){
   hSbarValue = GUI.HorizontalScrollbar(Rect(25,25,100,30),hSbarValue,1.0,0.0,10.0);
   vSbarValue = GUI.VerticalScrollbar(Rect(25,50,30,100),vSbarValue,1.0,10.0,0.0);
}

//vSbarValue最大值为10.0-1.0(能看到的区域大小)=9


ScrollView控件:用来在GUI界面中绘制一个滚动视图区域,并且可以通过滚动条来控制也显示的区域内容。过成对调用BeginScrollView和 EndScrollView完成绘制。在这2个函数之间的CU|代码会绘制在滚动视图内部区域中。 
视图内部区域大小为220*220,包含四个按钮控件,实际显示大小为100*100,通过滚动条来控制视图的显示内容。

var scrollPosition : Vector2 = Vector2.zero;//初始滚动位置

function OnGUI(){

      //开始绘制滚动视图

      scrollPosition = GUI. BeginScrollView(Rect(10,10,100,100), scrollPosition,Rect(0,0,220,200));

     //在滚动视图四个角上分别绘制按钮

      GUI.Button(Rect(0,0,100,20),"Top-left");

      GUI.Button(Rect(120,0,100,20),"Top-right");

      GUI.Button(Rect(0,180,100,20),"Bottom-left");

      GUI.Button(Rect(120,180,100,20),"Bottom-right");

      GUI. EndScrollView(); //结束滚动视图 

}


Window窗口
窗口可以看做容纳控件的容器,把控件绘制在窗口中,可以方便地调整窗口内所有控件的位置,以及显示隐藏。
Window函 数会调用另外一个函数来进行绘制控件的工作。在绘制控件函数中,控件的位置为窗口自身坐标系下的位置,如果控件位置超出了窗口的区域, 将不会显示。
如果想让窗口可拖动,在绘制函数中调用DragWindow函数可以设置窗口的拖动位置。

var windowRect : Rect = Rect (50,50,220,100);
function OnGUI(){
   windowRect = GUI.Window(0, windowRect, WindowFunction,"My Window");
}

function WindowFunction(windowID : int){
  //窗口内绘制一个按钮
  GUI.Button(Rect(60,50,100,20),"Button");
  GUI.DragWindow(Rect(0,0,220,20));//让窗口可以通过标题栏拖动位置
}


GUISkin控件样式(界面皮肤

var myGUISkin : GUISkin;
function OnGUI(){
   GUI.skin = myGUISkin;
   GUI.Button(Rect(60,50,240,60),"自定义按钮");
}

0 0
原创粉丝点击