版本: Unity 6 (6000.0)
语言英语
  • C#

VisualElement

UnityEngine.UIElements 中的类

/

继承自:UIElements.Focusable

/

实现于:UnityEngine.UIElementsModule


实现接口:IExperimentalFeatures, IResolvedStyle, ITransform, ITransitionAnimations, IVisualElementScheduler

建议更改

成功!

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

关闭

提交失败

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

关闭

取消

描述

UIElements 可视化树中对象的基类。

VisualElement 包含 UIElements 中所有控件共有的几个功能,例如布局、样式和事件处理。其他几个类从它派生,以实现自定义渲染并为控件定义行为。

静态属性

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

属性

childCount此对象 contentContainer 中的子元素数量。
contentContainer子元素添加到它,通常它与元素本身相同。
contentRect元素内容区域的矩形,在元素的局部空间中。(只读)
customStyleVisualElement 的自定义样式属性访问器(只读)。
dataSource为该 VisualElement 分配数据源,该数据源会覆盖任何继承的数据源。此数据源由所有子级继承。
dataSourcePath从数据源到值的路径。
dataSourceType可分配给该 VisualElement 的数据源的可能类型。此信息仅供 UI Builder 使用,作为提示,以便在设计时无法指定有效数据源时为数据源路径字段提供一些完成。
disablePlayModeTint除非设置为 true,否则默认情况下会应用播放模式色调。它会分层应用于此 VisualElement 及其在编辑器面板上存在的所有子级。
enabledInHierarchy如果 VisualElement 在其自己的层次结构中启用,则返回 true。
enabledSelf如果 VisualElement 在本地启用,则返回 true。
experimental返回 UIElements 实验接口。
generateVisualContent委托函数,用于生成可视化元素的可视化内容。
hierarchy访问此元素的物理层次结构
languageDirection指示元素文本的方向。该值将传播到元素的子级。
layoutVisualElement 相对于其父级的相对位置和大小,由布局系统计算。(只读)
localBound返回一个 Rect,表示应用变换后但在应用布局平移之前的轴对齐包围盒 (AABB)。
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 尚未成为 Panel 的一部分时设置。一旦成为 Panel 的一部分,此属性就有效地变为只读,尝试更改它将引发异常。指定适当的 UsageHints 会使系统能够更好地决定如何根据预期的使用模式处理或加速某些操作。请注意,这些提示不会影响行为或视觉结果,只会影响面板及其内部元素的整体性能。建议始终考虑指定适当的 UsageHints,但请记住,某些 UsageHints 可能会在某些情况下被内部忽略(例如,由于目标平台上的硬件限制)。
userData此属性可用于将应用程序特定的用户数据与该 VisualElement 相关联。
viewDataKey用于视图数据持久性,例如树展开状态、滚动位置或缩放级别。
visible指示是否应渲染此元素。
visualTreeAssetSource存储资产引用,如果生成的元素是从 VisualTreeAsset 克隆的。
worldBound返回一个 Rect,表示应用世界变换后的轴对齐包围盒 (AABB)。
worldTransform返回一个矩阵,该矩阵累积以下操作(按顺序): -局部缩放 -局部旋转 -局部平移 -布局平移 -父级 worldTransform(递归定义 - 在没有父级时考虑单位矩阵)

构造函数

VisualElement初始化并返回 VisualElement 的实例。

公共方法

Add将元素添加到此元素的 contentContainer
AddToClassList向元素的类列表添加一个类,以便从 USS 分配样式。请注意,类名区分大小写。
BringToFront将此元素置于其父级子级列表的末尾。该元素将在视觉上位于任何重叠的兄弟元素的前面。
Children返回来自其 contentContainer 的元素。
ClassListContains在该元素的类列表中搜索一个类。
Clear从此元素的 contentContainer 中删除所有子元素
ClearBinding从此元素中删除一个绑定。
ClearBindings从此元素中删除所有绑定。
ClearClassList从此元素的类列表中删除所有类。AddToClassList
Contains检查此元素是否是指定子元素的祖先。
ContainsPoint检查指定点是否与该 VisualElement 的布局相交。
ElementAt检索特定索引处的子元素。
EnableInClassList启用或禁用具有给定名称的类。
FindAncestorUserData向上搜索此 VisualElement 的层次结构,并检索存储的 userData(如果找到)。
FindCommonAncestor在 VisualTree 层次结构内查找两个 VisualElements 之间的最低共同祖先。
GetBinding获取为提供的目标属性提供的绑定实例。
GetBindingInfos获取有关当前元素所有绑定的信息。
GetClasses检索此元素的类。
GetDataSourceContext查询绑定对象的 dataSource 和 dataSourcePath。
GetFirstAncestorOfType从该元素的父级开始向上遍历层次结构,并返回该类型的第一个 VisualElement
GetFirstOfType从该元素开始向上遍历层次结构,并返回该类型的第一个 VisualElement
GetHierarchicalDataSourceContext查询从层次结构继承的 dataSource 和 dataSourcePath。
HasBinding允许知道目标属性是否与其关联的绑定相关联。
IndexOf检索指定 VisualElement 的子索引。
Insert将元素插入此元素的 contentContainer
MarkDirtyRepaint在下一帧触发 VisualElement 的重绘。当发生需要重绘的更改时,此方法在内部调用,例如当 UIElements.BaseField_1.value 更改或 Label 中的文本更改时。如果您正在实现自定义控件,则可以在发生需要重绘的更改时调用此方法来触发重绘,例如当使用 generateVisualContent 渲染网格且网格数据现在已更改时。
PlaceBehind将此元素放置在其父级子级列表中的兄弟元素之前。如果元素和兄弟元素位置重叠,则该元素将在视觉上位于其兄弟元素的后面。
PlaceInFront将此元素放置在其父级子级列表中的兄弟元素之后。如果元素和兄弟元素位置重叠,则该元素将在视觉上位于其兄弟元素的前面。
Remove从此元素的 contentContainer 层次结构中删除此子元素。
RemoveAt从此元素的 contentContainer 中删除位于此位置的子元素
RemoveFromClassList从此元素的类列表中删除一个类。
RemoveFromHierarchy从此元素的父级层次结构中删除此元素。
SendEvent将事件发送到事件处理程序。
SendToBack将此元素发送到其父级子级列表的开头。该元素将在视觉上位于任何重叠的兄弟元素的后面。
SetBinding在目标和源之间分配一个绑定。
SetEnabled更改 VisualElement 的启用状态。禁用的 VisualElement 不会接收大多数事件。
Sort重新排序从此 VisualElement contentContainer 中的子元素。
ToggleInClassList在从类列表中添加和删除给定的类名之间切换。
TryGetBinding获取为提供的目标属性提供的绑定实例。
TryGetDataSourceContext查询绑定对象的 dataSource 和 dataSourcePath。
TryGetLastBindingToSourceResult返回从 UI 到数据源的绑定对象的最后一个 BindingResult。
TryGetLastBindingToUIResult返回从数据源到 UI 的绑定对象的最后一个 BindingResult。

继承的成员

属性

canGrabFocus如果元素可以获取焦点,则返回 true。
delegatesFocus元素是否应将焦点委托给其子元素。
focusable如果元素可获得焦点,则为 True。
focusController返回此元素的焦点控制器。
tabIndex用于在焦点环中对可聚焦元素进行排序的整数。必须大于或等于零。

公共方法

HasBubbleUpHandlers如果事件处理程序已附加到此对象以进行事件传播 BubbleUp 阶段,则返回 true。
HasTrickleDownHandlers如果事件处理程序已附加到此对象以进行事件传播 TrickleDown 阶段,则返回 true。
RegisterCallback将事件处理程序添加到实例。如果事件处理程序已针对同一阶段(TrickleDown 或 BubbleUp)注册,则此方法无效。
RegisterCallbackOnce将事件处理程序添加到实例。如果事件处理程序已针对同一阶段(TrickleDown 或 BubbleUp)注册,则此方法无效。事件处理程序在完全调用一次后自动注销。
UnregisterCallback从实例中删除回调。
Blur告诉元素释放焦点。
Focus尝试将焦点赋予此元素。

受保护的方法

HandleEventBubbleUp在 BubbleUp 阶段执行此元素上的逻辑,紧接在该元素的 BubbleUp 回调之前。调用 StopPropagation 将阻止沿着传播路径进一步调用此方法。
HandleEventTrickleDown在 TrickleDown 阶段执行此元素上的逻辑,紧接在该元素的 TrickleDown 回调之后。调用 StopPropagation 将阻止沿着传播路径进一步调用此方法。
NotifyPropertyChanged通知数据绑定系统控件的属性已更改。