uitab
创建选项卡式面板
说明
t = uitab 在选项卡组内创建一个选项卡,并返回 Tab 对象。如果没有可用的选项卡组,MATLAB® 将调用 figure 函数以创建一个图窗。然后,它在该图窗中创建一个选项卡组,并将选项卡放在该选项卡组内。
t = uitab(___, 创建一个选项卡,其属性由一个或多个名称-值参量指定。例如,使用 Name,Value)Title 属性指定选项卡标题。可将此选项与上述语法中的任何输入参量组合一起使用。
示例
在 UI 图窗中创建一个具有两个选项卡的选项卡组。指定每个选项卡的标题。
fig = uifigure; tg = uitabgroup(fig); t1 = uitab(tg,"Title","Data"); t2 = uitab(tg,"Title","Plots");

在 UI 图窗中创建一个具有两个选项卡的选项卡组,并通过指定属性值来自定义选项卡的外观。
fig = uifigure; tg = uitabgroup(fig); t1 = uitab(tg,"Title","Data","BackgroundColor",[0 0.4470 0.7410]); t2 = uitab(tg,"Title","Plots","BackgroundColor",[0 0.4470 0.7410]);

查询 Data 选项卡标题的文本颜色。
c = t1.ForegroundColor
c = 1×3
0.1294 0.1294 0.1294
更新文本颜色以匹配选项卡背景颜色。
t1.ForegroundColor = t1.BackgroundColor;

创建包含一个选项卡的选项卡组。向该选项卡添加六个 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。
输入参数
父容器,指定为 TabGroup 对象。
名称-值参数
以 Name1=Value1,...,NameN=ValueN 的形式指定可选参量对组,其中 Name 是参量名称,Value 是对应的值。名称-值参量必须出现在其他参量之后,但对各个参量对组的顺序没有要求。
示例: uitab(Title="Options") 指定选项卡标题为 Options。
在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name 引起来。
示例: uitab("Title","Options") 指定选项卡标题为 Options。
注意
此处所列的属性只是可用属性中的一部分。有关完整列表,请参阅 Tab。
标题,指定为字符向量、字符串标量或分类数组。如果将此属性指定为分类数组,MATLAB 将仅显示数组中的第一个元素。
MATLAB 不会将竖线 ('|') 字符解释为换行符,它在标题中显示为竖线。
如果要指定 Unicode® 字符,则将 Unicode 十进制码传递到 char 函数。例如,['Multiples of ' char(960)] 显示为 Multiples of π。
背景颜色,指定为 RGB 三元组、十六进制颜色代码或下表中列出的颜色选项之一。
RGB 三元组和十六进制颜色代码对于指定自定义颜色非常有用。
RGB 三元组是包含三个元素的行向量,其元素分别指定颜色中红、绿、蓝分量的强度。强度值必须位于
[0,1]范围内,例如[0.4 0.6 0.7]。十六进制颜色代码是字符向量或字符串标量,以井号 (
#) 开头,后跟三个或六个十六进制数字,范围可以是0到F。这些值不区分大小写。因此,颜色代码"#FF8800"与"#ff8800"、"#F80"与"#f80"是等效的。
此外,还可以按名称指定一些常见的颜色。下表列出了命名颜色选项、等效 RGB 三元组和十六进制颜色代码。
| 颜色名称 | 短名称 | RGB 三元组 | 十六进制颜色代码 | 外观 |
|---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" |
|
"green" | "g" | [0 1 0] | "#00FF00" |
|
"blue" | "b" | [0 0 1] | "#0000FF" |
|
"cyan" | "c" | [0 1 1] | "#00FFFF" |
|
"magenta" | "m" | [1 0 1] | "#FF00FF" |
|
"yellow" | "y" | [1 1 0] | "#FFFF00" |
|
"black" | "k" | [0 0 0] | "#000000" |
|
"white" | "w" | [1 1 1] | "#FFFFFF" |
|
下表列出了浅色和深色主题中绘图的默认调色板。
| 调色板 | 调色板颜色 |
|---|---|
在 R2025a 之前的版本中: 大多数绘图默认使用这些颜色。 |
|
|
|
您可以使用 orderedcolors 和 rgb2hex 函数获取这些调色板的 RGB 三元组和十六进制颜色代码。例如,获取 "gem" 调色板的 RGB 三元组并将其转换为十六进制颜色代码。
RGB = orderedcolors("gem");
H = rgb2hex(RGB);在 R2023b 之前的版本中: 使用 RGB = get(groot,"FactoryAxesColorOrder") 获取 RGB 三元组。
在 R2024a 之前的版本中: 使用 H = compose("#%02X%02X%02X",round(RGB*255)) 获取十六进制颜色代码。
此 属性 为只读。
选项卡的位置和大小,返回为 [left bottom width height] 形式的四元素向量。此表介绍该向量中的每个元素。
| 元素 | 描述 |
|---|---|
left | 选项卡组的内部左边缘与选项卡的内部左边缘之间的距离 |
bottom | 选项卡组的内部下边缘与选项卡的内部下边缘之间的距离 |
width | 选项卡的左右内部边缘之间的距离 |
height | 选项卡的上下内部边缘之间的距离 |
所有测量值都采用 Units 属性指定的单位。
注意
以下是使用 Position 属性时要注意的一些重要内容:
Position值受到选项卡标题的长度和父TabGroup对象的TabLocation属性的影响。Position值相对于父TabGroup的可绘制区域,即边框内的区域。如果选项卡位于网格布局管理器中,则
Position属性的值不会立即更新。要使用Position值相对于选项卡大小调整选项卡子级的大小,请使用SizeChangedFcn回调。
测量单位,指定为下表中的值之一。
| 单位值 | 描述 |
|---|---|
'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 中的选项卡:
ScrollableAutoResizeChildren
对于使用 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 函数时所返回的列表中。
从 R2018b 开始,不推荐使用 TooltipString 属性为 UI 组件指定工具提示。请改用 Tooltip 属性。属性值是相同的。
目前没有停止支持 TooltipString 属性的计划。但是,TooltipString 属性将不再出现在对 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)













