Unity GUI组件控制随记
2013-11-07 01:53
483 查看
1- 设置TextField, PasswordField, TextArea控件为输入焦点:
在绘制控件前使用GUI.SetNextControlName函数设置下一个输入控件的控制名称。
在绘制控件后的OnGUI 函数内可通过GUI.FocusControl函数设置对应控件为焦点控件。
示例:
2- 设置TextField, PasswordField, TextArea之类的控件输入光标位置:
通过函数
获取当前键盘输入焦点的文字控制对象。
后可通过控制对象进行相关的控制,如通过SelectTextEnd()函数将光标移动到末尾等操作。
注意的是当使用FocusControl设置焦点后需在下一帧调用光标设置等操作,否则会出现部分操作失效的情况,具体原因跟Unity本身GUI绘制的机制有关。
在绘制控件前使用GUI.SetNextControlName函数设置下一个输入控件的控制名称。
在绘制控件后的OnGUI 函数内可通过GUI.FocusControl函数设置对应控件为焦点控件。
示例:
GUI.SetNextControlName("test_control"); GUI.TextField(new Rect(4, 4, 200, 16), "test"); GUI.FocusControl("test_control");
2- 设置TextField, PasswordField, TextArea之类的控件输入光标位置:
通过函数
TextEditor obj = GUIUtility.GetStateObject(typeof(TextEditor), GUIUtility.keyboardControl) as TextEditor;
获取当前键盘输入焦点的文字控制对象。
后可通过控制对象进行相关的控制,如通过SelectTextEnd()函数将光标移动到末尾等操作。
注意的是当使用FocusControl设置焦点后需在下一帧调用光标设置等操作,否则会出现部分操作失效的情况,具体原因跟Unity本身GUI绘制的机制有关。
相关文章推荐
- 面向组件编程之Unity 8.按键控制 关键字:bool,GetKey,KeyCode
- 【Unity 3D】学习笔记三十九:控制组件
- Unity-GUI创建控件时控制位置
- Unity动画控制组件UIPlayTween
- unity->C#->组件->点击cube1 可以控制 光源亮度 cube1变大变小 cube2旋转 sphere颜色 cylander走停
- 面向组件编程之Unity 11.Quaternion类属性 线性插值Lerp() 关键字:按键控制游戏物体朝向
- unity 动态控制 组件或脚本的激活与关闭 对象的显示与隐藏
- gui字体颜色的控制和常用组件
- 【Unity3D】Unity自带组件—完成第一人称人物控制
- 学习u3d笔记(一) OnGui实现动态创建cube组件 并按钮控制cube旋转 停止 销毁
- 面向组件编程之Unity 7.怎样脚本控制物体旋转和移动 关键字:画圆&&Translate/transform.Translate,transform.Rotate
- Unity+FairyGUI)rpg方向控制的方向盘控制/摇杆
- unity组件之应用与控制
- 【Unity 3D】学习笔记三十九:控制组件
- 【Unity3D API的学习与使用】Unity实现GUI组件的位移、缩放和旋转
- Unity GUI(uGUI)使用心得与性能总结
- 面向组件编程之Unity 11.Quaternion.LookRotation 转自lijing_hi
- Unity3D的GUI插件(UIToolkit,GUIX)在Unity的社区里发现一个不错的UI插件----UIToolkit.
- 嵌入式系统软件中的GUI组件设计
- Unity学习笔记(4) --- Unity的界面排版:初识GUI