Unity3D编辑器之重写Hierarchy的右键菜单

 1 using UnityEngine;
 2 using UnityEditor;
 3 using System.Collections;
 4
 5 public class MyHierarchyMenu
 6 {
 7     [MenuItem("Window/Test/yusong")]
 8     static void Test()
 9     {
10     }
11
12     [MenuItem("Window/Test/momo")]
13     static void Test1()
14     {
15     }
16     [MenuItem("Window/Test/雨松/MOMO")]
17     static void Test2()
18     {
19     }
20
21
22     [InitializeOnLoadMethod]
23      static void StartInitializeOnLoadMethod()
24      {
25          EditorApplication.hierarchyWindowItemOnGUI += OnHierarchyGUI;
26      }
27
28      static void OnHierarchyGUI(int instanceID, Rect selectionRect)
29      {
30          if (Event.current != null && selectionRect.Contains(Event.current.mousePosition)
31              && Event.current.button == 1 && Event.current.type <= EventType.mouseUp)
32          {
33              GameObject selectedGameObject = EditorUtility.InstanceIDToObject(instanceID) as GameObject;
34              //这里可以判断selectedGameObject的条件
35              if (selectedGameObject)
36              {
37                 Vector2 mousePosition = Event.current.mousePosition;
38
39                 EditorUtility.DisplayPopupMenu(new Rect(mousePosition.x, mousePosition.y, 0, 0), "Window/Test",null);
40                 Event.current.Use();
41              }
42          }
43      }
44
45 }

原文链接:http://www.xuanyusong.com/archives/3893

时间: 2024-11-05 12:30:33

Unity3D编辑器之重写Hierarchy的右键菜单的相关文章

Unity3D研究院编辑器之重写Hierarchy的右键菜单

Hierarchy视图中选择一个游戏对象以后通过右键可以打开一个unity默认菜单,一般情况下都可以满足我们,但是我想真对某些特殊的游戏对象而展开特殊的菜单.如下图所示,比如这样: 代码: using UnityEngine; using UnityEditor; using System.Collections; public class MyHierarchyMenu { [MenuItem("Window/Test/yusong")] static void Test() { }

[Asp.net]Calendar+JqueryUi实现日程管理(右键菜单,添加,编辑,删除,源码)

引言 出差终于回来了,这篇文章算是这个月的博客的开篇吧. 上篇文章:[Asp.net]Calendar+JqueryUi实现日程管理——添加日程 上篇文章主要贴了一些该项目的界面,这里面,将主要代码也贴出来分享一下. 项目 数据库设计 1 USE [Wolfy.Schedule] 2 GO 3 4 /****** Object: Table [dbo].[TB_Schedule] Script Date: 2014/7/5 16:30:00 ******/ 5 SET ANSI_NULLS ON

电脑右键菜单的编辑(注册表操作)

目录:1.关于右键菜单的探索 2.某些常见的注册表项 3.在命令行中添加和删除注册表项 4.注册表项导入文件(.reg文件) 1.关于右键的探索 内容:我的电脑右键,文件夹右键,文件右键,特定文件类型的右键 链接:http://wenku.baidu.com/link?url=2Z-9tm4kZJiqZaiPXbYmty5TiNaHPuie7vG7sVK1Ik3owwX3gjF9vFI17JSIaetL4yF_2fWLWBCTFX4ImFR446qLMATLPsNoUQL7EKP8dy_ 内容:

qt QTableView 的使用(嵌入QCheckobox,为某一单元格设置颜色,单击,双击,右键菜单QMenu)

QTableView 的使用 设置 example_model =new ExampleModel;(自定义的数据层model) QStringList headerList; headerList <<"名字"<<"序号"<<"性别"<<"年龄"<<"成绩"; example_model->setHorizontalHeaderLabels

使用arcengine开发程序右键菜单

ArcGIS Engine是ESRI在ArcGIS9版本才开始推出的新产品,它是一套完备的嵌入式GIS 组件库和工具库,使用ArcGIS Engine开发的GIS应用程序可以脱离ArcGIS Desktop而运行.让我们一起来看,右键菜单的设计与实现. 利用ArcGIS Engine开发自定义GIS应用程序中,一般有两种方式来建立右键菜单. 一是利用开发工具自带的右键菜单控件,如Visual Studio中的ContextMenuStrip控件: 二是利用ArcGIS Engine封装好的ITo

Arcengine 二次开发添加右键菜单

最近在搞arcengine 二次开发,遇到了好多问题,也通过网上查资料试着慢慢解决了,把解决的步骤记录下来,有需要帮助的可以看一下,也欢迎各位来批评指正. 想给自己的map application在图层上添加右键菜单,谷歌了一下,找到了解决的方法,原文的地址edndoc.esri.com/arcobjects/9.2/NET/1ED14BF2-A0E3-4e56-A70D-B9A7F7EC7880.htm.然后我根据这个添加了自己的右键菜单,又有一些改动. 效果如图所示(有点简陋),仅仅是简单的

Qt:QT右键菜单

Qt QTableView 上加右键弹出菜单, 并复制选中的单元格内容到剪贴板中 http://wenku.baidu.com/view/c51cfb63cf84b9d528ea7a29.html http://www.cppblog.com/biao/archive/2010/01/01/104593.html QWidget及其子类都可有右键菜单,因为QWidget有以下两个与右键菜单有关的函数: Qt::ContextMenuPolicy contextMenuPolicy () cons

手动添加git到目录右键菜单

  1.通过在"运行"中输入'regedit',打开注册表. 2.找到[HKEY_CLASSES_ROOT\Directory\Background]. 3.在[Background]下如果没有[shell],则右键-新建项[shell]. 4.在[shell]下右键-新建项[Git Bash],其值为"Git Bash Here",此为右键菜单显示名称. 5.在[shell]下右键-新建-字符串值[Icon],双击编辑,其值为"C:\Program Fi

QTableWidget详解(样式、右键菜单、表头塌陷、多选等)

在Qt的开发过程中,时常会用到表单(QTableWidget)这个控件,网上的资料不少,但是都是最基本的,有一些比较经常遇到的问题也说得不太清楚.所以,今天就在这里总结一下! 以下为个人模拟Windows资源管理器的一个表单 一.设置表单样式 table_widget->setColumnCount(4);//设置列数 table_widget->horizontalHeader()->setDefaultSectionSize(150); table_widget->horizo