- Home /
GUI scripting? continued
I posted yesterday about scripting and I tried to reply to that thread but it would not let me. I have a new strip of code and it seems to fit a little bit better to my needs, but I need to know how to add buttons and other elements of a GUI rather than a label. So if anyone can give me any tips to adding different GUI elements (buttons especially) using this method of GUI i would be extremely grateful.
CODE BELOW!
var information: String;
private var guiOn = false;
private var rect: Rect;
function OnMouseDown () {
guiOn = true;
rect = Rect(Screen.width/2-50,Screen.height/2-50,200,200);
yield WaitForSeconds(10);
guiOn = false;
}
function OnGUI () {
if (guiOn){
GUI.Label(rect, information);
}
}
Answer by Kergal · Feb 07, 2013 at 12:19 AM
I am using C# so if that first point is not valid - please excuse. just for the sake of cleanness - private var rect: Rect = Rect(Screen.width/2-50,Screen.height/2-50,200,200); at the top - it is just more convenient - and has the advantage that you could pass different rects (for different elements ) when the user clicks the mouse.
To your question...
well...
if ( GUI.Button ( rect (....) , " click me " ) ) { do something awesome(); }
i suggest taking a quick peak at the unity scripting API :
http://docs.unity3d.com/Documentation/ScriptReference/GUI.Button.html ( specifically for GUI.Button)
http://docs.unity3d.com/Documentation/ScriptReference/GUI.html (all GUI stuff at once )
btw. a very convenient way is also all the GUILayout.Label (GUILayout.Button) stuff - because you do not really need to pass in a rect. It is automated.
I hope I could help, if not - sorry.
Answer by austin2118ace · Feb 07, 2013 at 04:04 AM
This is how to add a button, Not: All GUI related things should be in void OnGUI
void OnGUI()
{
GUI.Button(new Rect(0,0,80,50),"Button"));
}
The fist zero represents the location horizontally of the button. The second one is the height. The 80 represents how long a button is. The 50 is its Height. "Button" Is what is displayed inside the button change Button to whatever you want.
BTW this is in C# If you need help with JavaScript go to Start Menu > Unity >Unity Documentation And click scripting Reference
Your answer
Follow this Question
Related Questions
GUI destroy instantiated Objects 2 Answers
making and integrating Visual novel element in 3d game? 2 Answers
The Transparent boarder in a button 2 Answers
GUI Popup problem…! 1 Answer
Group GUI Objects to reduce draw calls. 0 Answers