- Home /
Horizontal slider won't work
Hey ! My horizontal slider won't move. Here is my code :
Sensitivity sens = new Sensitivity();
float sensSlider = 200f;
void OnGUI()
{
sens.sensitivityMove = GUI.HorizontalSlider(new Rect(Screen.width/2-(sensSlider/2),Screen.height/2-50,sensSlider,30),0.1f,1.0f,0.1f);
}
and my Sensitivity class :
public float sensitivityMove;
public float SensitivityMove
{
get
{
return sensitivityMove;
}
set
{
sensitivityMove = value;
}
}
I hope you can help. Thanks in advance.
Out of curiosity why are you using properties in this case? There is no real benefit as you have coded it.
You should also make your backing variable private. Otherwise a class can simply bypass your properties by accessing sensitivity$$anonymous$$ove directly. (This is actually what's happening in your script).
Unfortunately none of this is related to your problem.
I agree with @Bored$$anonymous$$ormon +1, even your usage is not the public property, but using the backing field which is generally private for a slew of reasons.
Can you describe what you mean by not working, is it not displaying on the screen? What behavior are you seeing that isn't happening?
Answer by rutter · Jul 14, 2014 at 07:32 PM
What are the parameters to GUI.HorizontalSlider? The first is a screen rectangle, which is all well and good.
The next three params are the current, left-most, and right-most values. You're passing in 0.1f,1.0f,0.1f
.
If you always pass in a "current" value of 0.1
, the slider will always draw its thumb at that position.
If you want a thumb that moves, you need to pass a variable.
Something like this, perhaps:
sens.sensitivityMove = GUI.HorizontalSlider(new Rect(Screen.width/2-(sensSlider/2),Screen.height/2-50,sensSlider,30),sens.sensitivityMove,1.0f,0.1f);
Your answer
Follow this Question
Related Questions
Horizontal Slider with Labels 3 Answers
Distribute terrain in zones 3 Answers
how to control SMOOTHNESS via GUI slider?! It's not working...pls help! 1 Answer
How to draw slider thumb on top 0 Answers
Multiple Cars not working 1 Answer