版本: Unity 6 (6000.0)
语言English
  • C#
实验性: 此 API 为实验性 API,将来可能会更改或移除。

StackNode

UnityEditor.Experimental.GraphView 中的类

/

继承自:Experimental.GraphView.Node


实现接口:IDropTarget

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交内容,但我们确实阅读了用户提出的每个建议更改,并在适用的情况下进行更新。

关闭

提交失败

由于某些原因,您的建议更改无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

描述

使用此类自定义 StackNode 并管理在 StackNode 上拖动 GraphElement。

属性

contentContainer此 StackNode 的内容容器。
dragEntered指示此堆栈中的项目当前是否正在拖动。
dropPreviewTemplate使用此属性自定义在 GraphElement 拖动到 StackNode 上时显示的预览。
hasMultipleSelectionSupport如果 StackNode 支持多选,则返回 true。
headerContainer使用此属性自定义此 StackNode 的标题。

构造函数

StackNodeStackNode 构造函数。

公共方法

AddElement将指定的 GraphElement 添加到 StackNode。
CanAcceptDrop指示此 StackNode 是否接受当前的放置事件。
CollectElements检索此堆栈及其边中包含的节点集。检索到的图形元素与特定条件匹配。
DragEnter当发生拖动离开事件时,此方法会自动调用。
DragExited当发生拖动退出事件时,此方法会自动调用。
DragLeave当发生拖动离开事件时,此方法会自动调用。
DragPerform当发生放置事件时,此方法会自动调用。
DragUpdated当发生拖动更新事件时,此方法会自动调用。
GetInsertionIndex如果在指定的世界位置放置项目,则检索 StackNode 中的插入索引。
InsertElement在此 StackNode 中的指定索引处插入指定的 GraphElement。
OnStartDragging当堆栈的元素即将从中拖出时,此方法会自动调用。
RemoveElement从此 StackNode 中移除指定的 GraphElement。

受保护的方法

AcceptsElement检查是否可以将指定的 GraphElement 添加到此 StackNode。
OnCustomStyleResolved解析自定义样式属性时调用。
OnSeparatorContextualMenuEvent当上下文菜单即将出现在 StackNode 分隔符上时,此方法会自动调用。

继承的成员

静态属性

disabledUssClassName本地禁用元素的 USS 类名称。

属性

canGrabFocus如果元素可以获得焦点,则返回 true。
delegatesFocus元素是否应将其焦点委托给其子元素。
focusable如果元素可以获得焦点,则为 true。
focusController返回此元素的焦点控制器。
tabIndex用于在焦点环中对可聚焦元素进行排序的整数。必须大于或等于零。
capabilitiesGraphElement 的功能。
elementTypeColor用于 MiniMap 视图的颜色。
layerGraphElement 在图形中的图层。
selected如果 GraphElement 当前已选中,则为 true。
showInMiniMap元素是否显示在小地图中。
titleGraphElement 的标题。
expanded节点是否已展开。
extensionContainer用于显示自定义元素的空容器。添加元素后,调用 RefreshExpandedState 以切换此容器的可见性。
inputContainer用于输入端口的输入容器。
mainContainer包含所有其他容器的主容器。
outputContainer输出容器,用于输出端口。
title节点的标题元素。
titleButtonContainer标题栏按钮容器。包含右上角的按钮。
titleContainer标题栏容器。
topContainer包含输入和输出容器的整个顶部区域。
childCount此对象 contentContainer 中的子元素数量。
contentContainer子元素添加到其中,通常与元素本身相同。
contentRect元素内容区域的矩形,位于元素的本地空间中。(只读)
customStyleVisualElement 的自定义样式属性访问器(只读)。
dataSource将数据源分配给此 VisualElement,覆盖任何继承的数据源。此数据源由所有子元素继承。
dataSourcePath从数据源到值的路径。
dataSourceType可分配给此 VisualElement 的数据源的可能类型。此信息仅由 UI 构建器用作提示,以便在设计时无法指定有效数据源时为数据源路径字段提供一些补全。
disablePlayModeTint除非将其设置为 true,否则默认情况下会应用播放模式色调。它会分层应用于此 VisualElement 及其在编辑器面板上存在的所有子元素。
enabledInHierarchy如果 VisualElement 在其自己的层次结构中已启用,则返回 true。
enabledSelf如果 VisualElement 在本地已启用,则返回 true。
experimental返回 UIElements 实验性接口。
generateVisualContent委托函数,用于生成视觉元素的视觉内容。
hierarchy访问此元素的物理层次结构
languageDirection指示元素文本的方向性。该值将传播到元素的子元素。
layoutVisualElement 相对父元素的位置和大小,由布局系统计算。(只读)
localBound返回一个表示轴对齐边界框 (AABB) 的 Rect,在应用变换后但应用布局平移之前。
name此 VisualElement 的名称。
paddingRect元素填充区域的矩形,位于元素的本地空间中。
panel附加此 VisualElement 的面板。
parent此 VisualElement 的父元素。
pickingMode确定在鼠标事件或 IPanel.Pick 查询期间是否可以拾取此元素。
resolvedStyle视觉元素的最终渲染样式值,如当前帧中渲染的那样。(只读)
scaledPixelsPerPoint返回面板的最终缩放比例,该缩放比例考虑了屏幕 DPI 和可自定义的缩放因子,但不考虑元素及其祖先的变换缩放比例。请参阅 Panel.scaledPixelsPerPoint。这仅应在属于面板的元素上调用。
schedule检索此 VisualElement 的 IVisualElementScheduler
style在 VisualElement 上设置样式值。
styleSheets返回一个 VisualElementStyleSheetSet,用于操作附加到此元素的样式表。
this[int]检索特定索引处的子元素。
tooltip在用户将鼠标悬停在元素上一段时间后,在信息框内显示的文本。这仅在编辑器 UI 中受支持。
transform返回此 VisualElement 的变换对象。ITransform
usageHints指定 VisualElement 高级预期使用模式的提示值组合。仅当 VisualElement 尚未成为面板的一部分时,才能设置此属性。一旦成为面板的一部分,此属性实际上就成为只读属性,尝试更改它将引发异常。正确指定 UsageHints 会促使系统根据预期的使用模式做出更好的决策,以处理或加速某些操作。请注意,这些提示不会影响行为或视觉结果,只会影响面板及其内部元素的整体性能。建议始终考虑指定正确的 UsageHints,但请记住,在某些条件下,某些 UsageHints 可能会在内部被忽略(例如,由于目标平台上的硬件限制)。
userData此属性可用于将特定于应用程序的用户数据与此 VisualElement 关联。
viewDataKey用于视图数据持久性,例如树展开状态、滚动位置或缩放级别。
visible指示是否应渲染此元素。
visualTreeAssetSource存储资产引用,如果生成的元素是从 VisualTreeAsset 克隆的。
worldBound返回一个表示应用世界变换后的轴对齐边界框 (AABB) 的 Rect。
worldTransform返回一个矩阵,该矩阵累积以下操作(按顺序):-本地缩放-本地旋转-本地平移-布局平移-父级 worldTransform(递归定义-在没有父级时考虑单位矩阵)

公共方法

HasBubbleUpHandlers如果事件传播 BubbleUp 阶段的事件处理程序已附加到此对象,则返回 true。
HasTrickleDownHandlers如果事件传播 TrickleDown 阶段的事件处理程序已附加到此对象,则返回 true。
RegisterCallback向实例添加事件处理程序。如果已为同一阶段(TrickleDown 或 BubbleUp)注册了事件处理程序,则此方法无效。
RegisterCallbackOnce向实例添加事件处理程序。如果已为同一阶段(TrickleDown 或 BubbleUp)注册了事件处理程序,则此方法无效。事件处理程序在恰好调用一次后会自动取消注册。
UnregisterCallback从实例中移除回调。
Blur告诉元素释放焦点。
Focus尝试将焦点赋予此元素。
GetGlobalCenter获取 GraphElement 的中心点。
GetPosition获取 GraphElement 的位置。
HitTest查看点是否在 GraphElement 上方。
IsAscendable检查 GraphElement 在选中时是否会自动置于最前面。
IsCopiable检查 GraphElement 是否可复制。
IsDroppableGraphElement 是否可拖放。
IsGroupable检查 GraphElement 是否可分组。
IsMovableGraphElement 是否可移动。
IsRenamableGraphElement 是否可重命名。
IsResizableGraphElement 是否可调整大小。
IsSelectableGraphElement 是否可选。
IsSelectedGraphElement 当前在特定容器中是否已选中。
IsSnappable检查 GraphElement 是否可捕捉。
IsStackable检查 GraphElement 是否可堆叠。
OnSelected选中 GraphElement 时调用。
OnUnselected取消选中 GraphElement 时调用。
ResetLayer将 GraphElement 重置到其原始图层。
Select选择 GraphElement。
SetPosition设置 GraphElement 的位置。
Unselect取消选择 GraphElement。
BuildContextualMenu向节点上下文菜单中添加菜单项。
InstantiatePort创建特定于此节点的新端口。
RefreshExpandedState在将自定义元素添加到 extensionContainer 后,请调用此方法以使其可见。
刷新端口刷新端口的布局。
SetPosition设置节点位置。
添加将元素添加到此元素的 contentContainer 中。
添加到类列表向元素的类列表中添加一个类,以便从 USS 分配样式。请注意,类名区分大小写。
置于最前将此元素移至其父级子级列表的末尾。在视觉上,该元素将位于任何重叠的同级元素的前面。
子级返回其 contentContainer 中的元素。
类列表是否包含在此元素的类列表中搜索一个类。
清除从此元素的 contentContainer 中删除所有子元素。
清除绑定从元素中删除绑定。
清除所有绑定从元素中删除所有绑定。
清除类列表从此元素的类列表中删除所有类。添加到类列表
包含检查此元素是否为指定子元素的祖先。
包含点检查指定的点是否与此 VisualElement 的布局相交。
位于检索特定索引处的子元素。
在类列表中启用启用或禁用具有给定名称的类。
查找祖先用户数据向上搜索此 VisualElement 的层次结构,并检索存储的 userData(如果找到)。
查找共同祖先查找 VisualTree 层次结构中两个 VisualElement 之间的最低共同祖先。
获取绑定获取提供的目标属性的绑定实例。
获取绑定信息获取当前元素所有绑定的信息。
获取类检索此元素的类。
获取数据源上下文查询绑定对象的 dataSource 和 dataSourcePath。
获取第一祖先类型从此元素的父级开始向上遍历层次结构,并返回此类型的第一个 VisualElement。
获取第一类型从此元素开始向上遍历层次结构,并返回此类型的第一个 VisualElement。
获取分层数据源上下文查询从层次结构继承的 dataSource 和 dataSourcePath。
具有绑定允许知道目标属性是否与其关联的绑定。
索引检索指定 VisualElement 的子索引。
插入将元素插入此元素的 contentContainer 中。
标记脏重绘在下一帧触发 VisualElement 的重绘。当发生需要重绘的更改时,此方法会在内部调用,例如当 UIElements.BaseField_1.value 更改或 Label 中的文本更改时。如果您正在实现自定义控件,则可以在发生需要重绘的更改时(例如,当使用 generateVisualContent 渲染网格并且网格数据现在已更改时)调用此方法以触发重绘。
置于后面将此元素放置在其父级子级列表中同级元素的正前方。如果元素和同级元素的位置重叠,则该元素在视觉上将位于其同级元素的后面。
置于前面将此元素放置在其父级子级列表中同级元素的正后方。如果元素和同级元素的位置重叠,则该元素在视觉上将位于其同级元素的前面。
删除从此 contentContainer 层次结构中删除此子级。
移除位于从此元素的 contentContainer 中删除位于此位置的子元素。
从类列表中删除从元素的类列表中删除一个类。
从层次结构中删除从此元素的父级层次结构中删除此元素。
发送事件将事件发送到事件处理程序。
发送到后面将此元素发送到其父级子级列表的开头。在视觉上,该元素将位于任何重叠的同级元素的后面。
设置绑定在目标和源之间分配绑定。
设置启用更改 VisualElement 的启用状态。禁用的 VisualElement 不会接收大多数事件。
排序重新排序此 VisualElement contentContainer 中的子元素。
在类列表中切换在将给定类名添加到类列表和从中删除类名之间切换。
尝试获取绑定获取提供的目标属性的绑定实例。
尝试获取数据源上下文查询绑定对象的 dataSource 和 dataSourcePath。
尝试获取到源的最后一个绑定结果返回从 UI 到数据源的绑定对象的最后一个 BindingResult。
尝试获取到 UI 的最后一个绑定结果返回从数据源到 UI 的绑定对象的最后一个 BindingResult。

受保护的方法

处理事件冒泡在此元素的冒泡阶段执行逻辑,紧接在此元素的冒泡回调之前。调用 StopPropagation 将阻止沿传播路径进一步调用此方法。
处理事件向下传递在此元素的向下传递阶段执行逻辑,紧接在此元素的向下传递回调之后。调用 StopPropagation 将阻止沿传播路径进一步调用此方法。
通知属性更改通知数据绑定系统控件的属性已更改。
端口移除时删除端口时调用。
切换折叠切换节点的折叠状态。
使用默认样式应用 Node 的默认样式。Node 子类必须显式调用此方法,这些子类使用自己的 uxml 文件。