【Untiy3d-編輯器相關3】 各種面板上新增自定義選單
阿新 • • 發佈:2018-11-29
- [MenuItem("MenuItem/ShowTest1")]
- public static void ShowTest1()
- {
- Debug.Log("上方選單欄MenuItem 顯示一個按鈕 ShowTest1");
- }
- [MenuItem("GameObject/ShowTest2",false,0)]
- public static void ShowTest2()
- {
- Debug.Log("GameObject選單欄 和 Hierarchy檢視 裡點選滑鼠右鍵顯示 顯示一個按鈕 ShowTest2");
- }
- [MenuItem("Assets/ShowTest3",false,0)]
- public static void ShowTest3()
- {
- Debug.Log("上方選單欄和project裡點選滑鼠
- 右鍵顯示 ShowTest3");
- }
//MenuCommand是當前正在操作的元件
- [MenuItem("CONTEXT/Light/ShowTest4")]//CONTEXT(大寫) 元件名 按鈕名
- static void InitHeathAndSpeed(MenuCommand cmd)
- {
- Debug.Log("在帶有Light元件的GameObject右鍵,
- InSpector面板顯示 ShowTest4按鈕");
- }
//快捷鍵
% = ctrl # = Shift & = Alt LEFT/RIGHT/UP/DOWN = 上下左右 F1…F2 = F...
HOME, END, PGUP, PGDN = 鍵盤上的特殊功能鍵
都以下劃線(_)開始
- //[MenuItem("MenuItem/快捷鍵1 _%#d")]
- private static void MenuItemFunction1()
- {
- Debug.Log("Ctrl + Shitf + d 快捷鍵輸出");
- }
//只有選中指定型別的object,按鈕才有用,不然顯示灰色
- [MenuItem("MenuItem/Selected GameObject")]
- private static void SelectedGameObject()
- {
- Debug.Log("指定選中GameObject型別,
- MenuItem選單下的 Selected GameObject 才有用");
- }
- [MenuItem("MenuItem/Selected GameObject", true)]
- private static bool CheckObjectType()
- {
- Object selectedObject = Selection.activeObject;
- if(selectedObject != null &&
- selectedObject.GetType() == typeof(GameObject))
- {
- return true;
- }
- return false;
- }