uitabgroup
创建包含选项卡式面板的容器
语法
说明
tg = uitabgroup 在当前图窗中创建一个选项卡组并返回 TabGroup 对象。如果没有可用的图窗,MATLAB® 将调用 figure 函数创建一个图窗。选项卡组是选项卡的容器。它们允许您标识选定的选项卡,并检测用户何时选择了不同的选项卡。
tg = uitabgroup( 使用一个或多个名称-值参量指定选项卡组属性值。例如,您可以指定选项卡组的位置或选项卡标签的位置。Name,Value)
tg = uitabgroup( 指定父容器和一个或多个属性值。parent,Name,Value)
示例
创建一个图窗,其中包含一个选项卡组和两个选项卡。
f = figure; tabgp = uitabgroup(f,"Position",[.05 .05 .3 .8]); tab1 = uitab(tabgp,"Title","Settings"); tab2 = uitab(tabgp,"Title","Options");

获取当前选择的选项卡。
currenttab = tabgp.SelectedTab
currenttab =
Tab (Settings) with properties:
Title: 'Settings'
BackgroundColor: [0.9400 0.9400 0.9400]
Position: [0.0119 0.0089 0.9702 0.9107]
Units: 'normalized'
创建包含一个选项卡的选项卡组。向该选项卡添加六个 UI 组件,前三个组件位于选项卡的上边框的外部。
fig = uifigure; tg = uitabgroup(fig,"Position",[20 20 196 145]); t = uitab(tg,"Title","Member Information"); ef1 = uieditfield(t,"Text","Position",[11 165 140 22],"Value","First Name"); ef2 = uieditfield(t,"Text","Position",[11 140 140 22],"Value","Last Name"); ef3 = uieditfield(t,"Text","Position",[11 115 140 22],"Value","Address"); dd = uidropdown(t,"Position",[11 90 140 22],"Items",{'Male','Female'}); cb = uicheckbox(t,"Position",[11 65 140 22],"Text","Member"); b = uibutton(t,"Position",[11 40 140 22],"Text","Send");

通过将选项卡的 Scrollable 属性设置为 "on" 来启用滚动。默认情况下,滚动条显示在顶部。
t.Scrollable = "on";
在新脚本中,在 UI 图窗中创建一个具有两个选项卡的选项卡组。将 SelectionChangedFcn 属性指定为名为 displaySelection 的函数的句柄。当用户在选项卡组中的选项卡之间切换时,将执行此函数。
在脚本的底部,定义 displaySelection 函数来接受 MATLAB 传递给回调函数的两个输入参量:
src- 执行回调的组件event- 关于触发回调的用户交互的信息
在回调函数中,编写代码以在命令行窗口中显示可见选项卡的标题。
fig = uifigure; tg = uitabgroup(fig,"SelectionChangedFcn",@displaySelection); t1 = uitab(tg,"Title","Data"); t2 = uitab(tg,"Title","Plots"); function displaySelection(src,event) t = event.NewValue; title = t.Title; disp("Viewing the " + title + " tab") end
运行脚本并在选项卡之间切换以显示选项卡标题。
有关详细信息,请参阅Create Callbacks for Apps Created Programmatically。
输入参数
父容器,指定为 Figure 对象或其子容器之一:Tab、Panel、ButtonGroup 或 GridLayout。
名称-值参数
以 Name1=Value1,...,NameN=ValueN 的形式指定可选参量对组,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量之后,但参量对组的顺序无关紧要。
示例: uitabgroup(TabLocation='bottom') 指定选项卡标签位于选项卡组的底部。
在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。
示例: uitabgroup("TabLocation","bottom") 指定选项卡标签位于选项卡组的底部。
注意
此处所列的属性只是可用属性中的一部分。有关完整列表,请参阅 TabGroup。
当前选择的选项卡,指定为 Tab 对象。使用此属性可确定选项卡组中当前选定的选项卡。您也可以使用此属性设置默认选项卡选项。SelectedTab 属性的默认值是您添加到 TabGroup 中的第一个 Tab。
所选内容改变时的回调,指定为下列值之一:
函数句柄。
第一个元素是函数句柄的元胞数组。元胞数组中的后续元素是传递到回调函数的参量。
包含有效 MATLAB 表达式的字符向量(不推荐)。MATLAB 在基础工作区计算此表达式。
当用户在选项卡组中选择不同的选项卡时,将执行此回调函数。
此回调函数可以访问有关用户与选项卡的交互的特定信息。MATLAB 将 SelectionChangedData 对象中的此信息作为第二个参量传递给回调函数。在 App 设计工具中,该参量名为 event。您可以使用圆点表示法查询对象属性。例如,event.NewValue 返回当前选择的选项卡。SelectionChangedData 对象不可用于指定为字符向量的回调函数。
下表列出了 SelectionChangedData 对象的属性。
属性 | 描述 |
|---|---|
OldValue | 之前选择的 |
NewValue | 当前选择的 |
Source | 执行回调的组件 |
EventName |
|
有关编写回调的详细信息,请参阅App 设计工具中的回调。
选项卡标签位置,指定为 'top'、'bottom'、'left' 或 'right'。此属性指定选项卡标签相对于选项卡组的位置。
选项卡组的位置和大小,指定为 [left bottom width height] 形式的四元素向量。
此表介绍该向量中的每个元素。
| 元素 | 描述 |
|---|---|
left | 父容器的内部左边缘与选项卡组的外部左边缘之间的距离 |
bottom | 父容器的内部下边缘与选项卡组的外部下边缘之间的距离 |
width | 选项卡组的左右外部边缘之间的距离 |
height | 选项卡组的上下外部边缘之间的距离 |
所有测量值都采用 Units 属性指定的单位。
Position 值相对于父容器的可绘制区域。可绘制区域是指容器边框内的区域,不包括装饰元素(如菜单栏或标题)所占的区域。
测量单位,指定为下表中的值之一。
| 单位值 | 描述 |
|---|---|
'pixels'(基于 uifigure 的 App 中的默认值) | 在 Windows® 和 Macintosh 系统上,像素的大小为 1/96 英寸。此大小与系统分辨率无关。 在 Linux® 系统上,一个像素的大小由系统分辨率确定。 |
'normalized'(基于 figure 的 App 中的默认值) | 这些单位依据父容器进行归一化。容器的左下角映射到 |
'inches' | 英寸。 |
'centimeters' | 厘米。 |
'points' | 磅。1 磅等于 1/72 英寸。 |
'characters' | 这些单位基于图形根对象的默认 uicontrol 字体:
要访问默认的 uicontrol 字体,请使用 |
推荐值为 'pixels',因为大多数 MATLAB App 构建功能都以像素为单位测量距离。您可以创建一个对象,该对象根据父容器的大小重新缩放,方法是将使用 uigridlayout 函数创建的一个网格布局管理器作为该对象的父级。有关详细信息,请参阅Lay Out Apps Programmatically。
版本历史记录
在 R2014b 中推出这些属性可用于使用 figure 函数创建的 App 中的选项卡组:
TooltipAutoResizeChildrenLayout
对于使用 figure 函数创建的 App,当您查询选项卡组的 InnerPosition 属性时,该属性将返回与上一版本不同的值。此外,如果 TabLocation 是 'left' 或 'bottom',当您查询选项卡组中某个选项卡的 Position、InnerPosition 和 OuterPosition 属性时,这些属性可能会返回与以前版本不同值。这些更改使属性值和行为与基于 uifigure 的 App 中的属性一致。
下表描述 R2025a 及更早版本的属性值之间的差异。
| 属性 | 从 R2025a 开始 | R2024b 及更早版本 | ||
|---|---|---|---|---|
| 描述 | 图像 | 描述 | 图像 | |
选项卡组的 InnerPosition | 形式为 [left bottom width height] 的四元素向量,表示选项卡组相对于其父级的可绘制区域的大小和位置,不包括其中包含的选项卡的边框和标题 | 选项卡组
| 形式为 [left bottom width height] 的四元素向量,表示选项卡组相对于其父级的可绘制区域的大小和位置,包括其中所包含的选项卡的边框和标题 | 选项卡组
|
选项卡的 Position、InnerPosition 和 OuterPosition | 形式为 [left bottom width height] 的四元素向量,表示选项卡相对于选项卡组可绘制区域的大小和位置,其中选项卡组可绘制区域不包括边框和标题 | 相对于选项卡组可绘制区域(蓝色实线)的选项卡
| 形式为 [left bottom width height] 的四元素向量,表示选项卡相对于选项卡组可绘制区域的大小和位置,其中选项卡组可绘制区域包括边框和标题 | 相对于选项卡组可绘制区域(蓝色实线)的选项卡
|
如果您注意到 App 布局的变化,请考虑以下列方式更新您的代码:
选项卡组
InnerPosition- 用选项卡组Position属性替换对选项卡组InnerPosition属性的引用,以使用选项卡组的大小和位置,包括边框和选项卡标题。选项卡
Position、InnerPosition和OuterPosition- 替换对位置向量的前两个元素的引用,以使用选项卡标题在左侧或底部占据的空间。例如,如果您的 App 包含TabLocation值为'left'的选项卡组,并且您引用该选项卡组中某个选项卡的Position属性,请将该引用替换为选项卡组边框和选项卡可绘制区域之间的水平距离。
对于在 App 设计工具中创建并使用 uifigure 函数的 App,当您查询选项卡组的 InnerPosition 属性时,该属性将返回与以前版本不同值。此外,如果 TabLocation 是 'left' 或 'bottom',当您查询选项卡组中某个选项卡的 Position、InnerPosition 和 OuterPosition 属性时,这些属性可能会返回与以前版本不同值。
下表描述 R2022b 及更早版本的属性值之间的差异。
| 属性 | 从 R2022b 开始 | R2022a 及更早版本 | ||
|---|---|---|---|---|
| 描述 | 图像 | 描述 | 图像 | |
选项卡组的 InnerPosition | 形式为 [left bottom width height] 的四元素向量,表示选项卡组相对于其父级的可绘制区域的大小和位置,不包括其中包含的选项卡的边框和标题 | 选项卡组
| 形式为 [left bottom width height] 的四元素向量,表示选项卡组相对于其父级的可绘制区域的大小和位置,包括其中所包含的选项卡的边框和标题 | 选项卡组
|
选项卡的 Position、InnerPosition 和 OuterPosition | 形式为 [left bottom width height] 的四元素向量,表示选项卡相对于选项卡组可绘制区域的大小和位置,其中选项卡组可绘制区域不包括边框和标题 | 相对于选项卡组可绘制区域(蓝色实线)的选项卡
| 形式为 [left bottom width height] 的四元素向量,表示选项卡相对于选项卡组可绘制区域的大小和位置,其中选项卡组可绘制区域包括边框和标题 | 相对于选项卡组可绘制区域(蓝色实线)的选项卡
|
如果您注意到 App 布局的变化,请考虑以下列方式更新您的代码:
选项卡组
InnerPosition- 用选项卡组Position属性替换对选项卡组InnerPosition属性的引用,以使用选项卡组的大小和位置,包括边框和选项卡标题。选项卡
Position、InnerPosition和OuterPosition- 替换对位置向量的前两个元素的引用,以使用选项卡标题在左侧或底部占据的空间。例如,如果您的 App 包含TabLocation值为'left'的选项卡组,并且您引用该选项卡组中某个选项卡的Position属性,请将该引用替换为选项卡组边框和选项卡可绘制区域之间的水平距离。
从 R2020a 开始,不推荐使用 UIContextMenu 属性将上下文菜单分配给图形对象或 UI 组件。请改用 ContextMenu 属性。属性值是相同的。
目前没有停止支持 UIContextMenu 属性的计划。但是,UIContextMenu 属性将不再出现在对图形对象或 UI 组件调用 get 函数时所返回的列表中。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
选择网站
选择网站以获取翻译的可用内容,以及查看当地活动和优惠。根据您的位置,我们建议您选择:。
您也可以从以下列表中选择网站:
如何获得最佳网站性能
选择中国网站(中文或英文)以获得最佳网站性能。其他 MathWorks 国家/地区网站并未针对您所在位置的访问进行优化。
美洲
- América Latina (Español)
- Canada (English)
- United States (English)
欧洲
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)



