文档

表属性

控制表UI组件的外观和行为

表UI组件显示应用程序中的数据行和列场上函数创建一个表UI组件,并在显示它之前设置所需的属性。通过改变a的属性值表格对象时,可以修改其外观和行为的某些方面。使用点表示法来引用特定的对象和属性。

FIG = ufigure;uit = uitable(图,'Data',[1 2 3;4 5 6;7 8 9]);外的。FontSize = 10;

属性在应用程序设计器中列出的属性对表UI组件有效,或在使用uifigure函数。属性创建的应用程序中使用的表UI组件数字功能,请参阅表属性

表格

全部展开

表数据,指定为以下类型的数组之一:

  • 表数组-显示数据类型的任何组合表格数组支持,例如金宝appdatetime持续时间,分类

  • 数值数组-显示数值值,例如

  • 逻辑数组—显示复选框。真正的值对应于选定的框,而值显示已清除的框。

  • 单元格数组——显示数字、逻辑或字符数组值的任何组合。

  • 字符串数组-显示字符和文本。

  • 字符向量的单元格数组-显示字符和文本。

为了防止警告或当用户在可编辑单元格中输入无效数据时显示的值,则写入CellEditCallback函数将数据转换为适当的类型。当用户编辑单元格时,数据属性更新。

指定一个表数组

表数组提供了一种方便的方法来存储作为MATLAB的表格数据®变量。的表格readtable,array2table函数创建表数组。相比之下,场上函数创建表格UI组件(应用程序的用户界面组件)。

当您指定数据的属性表格UI组件作为一个表数组,然后MATLAB设置的格式表格UI组件自动基于表数组中的值:

  • 默认情况下,应用程序中显示的列名与VariableNames属性。改变了ColumnName的属性表格UI组件更新UI,但它不更新表数组中的变量名。

  • 默认情况下,应用程序中显示的行名与RowNames属性。改变了RowName的属性表格UI组件更新UI,但它不更新表数组中的行名。

  • 每个表数组变量的数据类型控制应用程序中相应列的格式ColumnFormat属性,MATLAB返回一个警告。

有关显示表数组数据的详细信息,请参见应用程序设计器应用程序中的表数组数据类型

指定字符向量的数字、逻辑、单元格、字符串数组或单元格数组

使用ColumnFormat属性指定数值、逻辑、单元格或字符串数组或字符向量的单元格数组的数据的格式。类的数据类型与数据类型之间不匹配ColumnFormat属性,MATLAB转换数据或显示警告。看到可编辑列的数据显示ColumnFormat属性描述以获取更多信息。

此属性是只读的。

当前显示中的表数据,以表、数字、逻辑、单元格或字符串数组或字符向量的单元格数组形式返回。

如果要根据用户是否对表中的列进行排序或编辑单元格更新可视化,请使用此属性。

DisplayData对表列进行排序或编辑单元格时进行更新。如果用户不对列进行排序,则DisplayData中存储的值具有相同的内容数据财产。当用户编辑单元格时,数据DisplayData属性都会更新。

列名称,指定为以下值之一:

  • “编号”—列标题为以“”开头的连续数字1

  • 字符向量或分类数组的单元格数组——数组的每个元素都成为一列的名称。列名被限制为一行文本。如果你指定一个1 ×n单元格数组,MATLAB存储并返回值为n-by-1单元格数组。如果您指定——- - - - - -n数组,MATLAB将数组重塑为列向量。

  • 空单元格数组({})—该表没有列标题。

  • 空矩阵([])—该表没有列标题

中的列数数据属性数组中的元素数目不匹配ColumnName数组,则结果表中的列数为两个值中较大的一个。

如果您指定数据属性作为表数组,则默认列名与VariableNames属性。改变了ColumnName的属性表格UI组件更新UI,但它不会更新表数组中的变量名。

例子:外的=场上(uifigure ColumnName,{“名称”,“数量”},“数据”,{“鲍勃”,5})

例子:外的=场上(uifigure ColumnName,{“名字”,[]},“数据”,{“鲍勃”,5})

表列的宽度指定为“汽车”或者是1 × -n单元阵列。

单元格数组中的每一列都对应于表中的一列。这些值以像素为单位。如果你指定“汽车”,然后MATLAB使用多个因子自动计算柱的宽度,其中之一是ColumnName属性值。

您可以将固定的列宽度和“汽车”单元格数组中的列宽度,或者您可以指定单个值'auto'使所有列宽度自动。如果指定的数组的值小于列数,则没有指定值的列将保持默认值,“汽车”.如果数组的值大于列数,MATLAB将忽略多余的值。

例子:uit = uitable(ufigure,'ColumnWidth','auto','Data',[1 2 3;4 5 6])

例子:uit = uitable(ufigure,'ColumnWidth',{64,60,40},'Data',[1 2 3;4 5 6])

例子:uit = uitable(ufigure,'ColumnWidth',{64,'auto',40},'Data',[1 2 3;4 5 6])

编辑列单元格的能力,指定为:

  • 空逻辑数组([]) -没有可编辑的列。

  • 一个逻辑上的1 × -narray -该数组指定哪些列是可编辑的。的价值n等于表中的列数。数组中的每个值都对应一个表列。值为真正的在数组中使该列中的单元格可编辑。值为使该列中的单元格不可编辑。如果数组的值大于列数,MATLAB将忽略多余的值。如果数组的值小于列数,则没有指定值的列是不可编辑的。

  • 逻辑标量—整个表是可编辑或不可编辑的。

当用户编辑单元格时,数据属性更新。

例子:uit = uitable(ufigure,'Data',rand(10,3),'ColumnEditable',[false true true])

例子:uit = uitable(ufigure,'Data',rand(10,3),'ColumnEditable',false)

要使用户能够与包含复选框或弹出菜单的表列中的控件交互,请设置ColumnEditable财产真正的

如果数据属性为表数组,则为多列或包含不可编辑数据类型的任何变量,如持续时间,在运行的应用程序中不能编辑ColumnEditable属性是真正的.在单元格数组中包含混合数据类型的表数组变量在运行的应用程序中是可编辑的,只要数据类型是可编辑的。

列排序功能,指定为:

  • 空逻辑数组([]) -没有列是可排序的。

  • 逻辑标量——整个表是可排序的(真正的)或无法分类().

  • 一个逻辑上的1 × -narray -该数组指定哪些列是可排序的。的价值n等于表中的列数。数组中的每个值都对应一个表列。值为真正的在数组中使该列可排序。值为使该列不可排序。如果数组的值大于列数,MATLAB将忽略多余的值。如果数组的值小于列数,则没有指定值的列不可排序。

例子:uit = uitable(ufigure,'Data',rand(5),'ColumnSortable',true);

例子:uit = uitable(ufigure,'Data',rand(3),'ColumnSortable',[true true false]);

如果数据属性包含单元格数组数据或具有单元格数组列的表数组数据,则只有具有数值数组或字符数组的统一数据类型的列,或具有字符向量的单元格数组的列在运行的应用程序中是可排序的ColumnSortable属性是真正的

单元格显示格式,指定为空单元格数组或1 × -n字符向量的单元格数组。

时不要设置此属性数据属性包含表格数组中。有关更多信息,请参见应用程序设计器应用程序中的表数组数据类型

此属性设置用于显示数字、逻辑、单元格或字符串数组以及字符向量数据类型的单元格数组的格式。单元格数组的元素对应于数据属性数组。如果不想为特定列指定显示格式,请指定[]对于这一列。如果未为列指定格式,MATLAB将根据单元格中数据的数据类型确定默认显示。

单元格数组的元素必须是表中描述的值之一。

单元格格式值

描述

“字符”

显示左对齐的值。中的元素数据那么属性数组是逻辑的真正的出现在表中。

要编辑单元格,用户输入文本替换现有值。

“逻辑”

显示一个居中对齐的复选框。最初,当对应的数据值计算为真正的.中的对应值数据属性数组必须为类型逻辑以确保数据在表中正确显示。

要编辑单元格,用户选择或清除复选框。然后用MATLAB进行相应的设置数据价值真正的.的ColumnEditable属性值必须为真正的允许用户选择或清除复选框。

“数字”

显示一个右对齐的值,等价于数值数据的命令窗口显示。中的元素数据那么属性数组是逻辑的10出现在表中。中的元素数据属性数组不是数字的,也不是逻辑的出现在表中。

要编辑单元格,用户可以输入任何文本。

如果用户输入表示常量的文本,例如π,您可以编码CellEditCallback函数将值转换为等效的数值。在这种情况下,MATLAB尝试将用户输入的文本转换为数值并将其存储在数据财产。然后,CellEditCallback函数执行。看到CellEditCallback举例说明。

1 -n单元格数组的字符向量,如{“一”、“两个”,“三”}

在可编辑列中显示弹出式菜单。该值显示为左对齐ColumnEditable属性设置为真正的

要编辑单元格,用户可以从弹出菜单中选择一个项,或者输入文本创建一个新项。MATLAB设置相应的数据属性数组的值赋给所选菜单项。的ColumnEditable属性值必须为真正的允许用户在弹出菜单中选择项目。

类所接受的格式名称格式函数,例如:“短”“长”

显示数据属性值使用指定的格式。这些值显示为右对齐。

弹出式菜单栏格式和各种数据类型的影响

如果ColumnFormat值定义了一个弹出菜单,初始值数据Value不一定是该菜单中的选项之一。最初的数据值显示,直到用户做出不同的选择。

例如,假设数据属性值为“选择”对于所有行,和ColumnFormat值指定选项为的弹出菜单“组1”“组2”.当MATLAB创建表时,这些表单元格将显示出来“选择”直到用户在弹出菜单中选择一个项目:

FIG = ufigure;myData = {'Andrew' 31 'Male' ' select ';...“鲍勃”41“男”“选择”;...“安妮”20“女”“选择”;};uit = uitable('Parent', fig,…'Position',[100 150 380 100],…“ColumnFormat ',({[] [] [] {' 组1 ' '组2 '}}),……“ColumnEditable”,真的,… 'Data',myData);

可编辑列的数据显示

该表描述了各种数据类型如何以特定的方式显示ColumnFormat值。

ColumnFormat
“数字” “字符” “逻辑”
数据数组值的数据类型 任何数字类型 表显示数字为原样。 MATLAB将值转换为文本,并在表中左对齐显示。如果MATLAB不能转换值,则显示器。 不推荐。当用户编辑单元格时,MATLAB可能会返回警告,除非您定义了CellEditCallback函数。
字符 表显示右对齐的值,就像它是一个数字一样。 表显示了当前的值。 不推荐。当用户编辑单元格时,MATLAB可能会返回警告,除非您定义了CellEditCallback函数。
逻辑 表将逻辑值显示为数字。当用户编辑单元格时,MATLAB可能会返回警告,除非您定义了CellEditCallback函数。 表以左对齐方式显示逻辑值“真正的”“假”.当用户编辑单元格时,MATLAB可能会返回警告,除非您定义了CellEditCallback函数。 表将逻辑值显示为复选框。

行名,指定为以下值之一:

  • “编号”—行标题为以“”开头的连续数字1

  • 字符向量或分类数组的单元格数组-数组的每个元素都成为一行的名称。行名被限制为一行文本。如果你指定一个1 ×n单元格数组,MATLAB存储并返回值为n-by-1单元格数组。如果您指定——- - - - - -n数组,MATLAB将数组重塑为列向量。

  • 空单元格数组({}—表中没有行标题。

  • 空矩阵([]—表中没有行标题

的行数数据属性数组中的元素数目不匹配RowName数组中的行数,则结果表中的行数反映数据财产。

如果您指定数据属性作为表数组,则默认行名与RowNames属性。改变了RowName属性的表UI组件更新UI,但它不会更新表数组中的行名。

例子:外的=场上(uifigure RowName,{“名称”,“数量”},“数据”,{“鲍勃”;5})

例子:外的=场上(uifigure RowName,{“名字”,[]},“数据”,{“鲍勃”;5})

此属性是只读的。

添加样式的配置,返回为n-by-3表数组。表数组的每一行都对应于当前应用于表UI组件的样式。连续添加的样式被赋予样式序号为n + 1.的目标TargetIndex列指定样式被添加到的表UI组件的部分。的风格列指定样式类名称。

类从表UI组件中删除样式,请使用此属性removeStyle函数。例如,在本例中,向表UI组件添加了三种样式。

S1 = ustyle (“写成BackgroundColor”“黄色”);S2 = ustyle (“写成BackgroundColor”“红色”);S3 = ustyle (“FontColor”“b”“FontWeight”“大胆”);FIG = ufigure;fig.Position = [100 100 520 220];Uit =可使用(图);外的。数据= rand(5);外的。位置= [20 30 480 135];addStyle (s1,外的“行”,[1 2 4 5]);addStyle(外的,s2,“细胞”, (2 1;4 2;1 3;1 5]) addStyle(uit,s3,“列”2);

当你查询时外的。StyleConfigurations,返回一个3 × 3的表数组。行样式首先被添加到表UI组件,因此它是样式顺序号1.的TargetIndex值的值,{1×4双},表示在添加样式时指定了四行。类似地,第二个样式被添加到表中的四个单元格中。第三个样式被添加到第二列。

外的。StyleConfigurations
ans = 3×3表目标TargetIndex风格  ______ ____________ ___________________________ 1行{1×4双}[1×1 matlab.ui.style。样式]2单元格{4×2 double} [1×1 matlab.ui.style.]风格] 3 column {[ 2]} [1×1 matlab.ui.style.Style]

通过指定样式订单号,删除添加到表中的第二个样式2.注意表UI组件是如何更新的。

removeStyle(外的,2)

字体

全部展开

字体名称,指定为系统支持的字体名称。金宝app默认字体取决于特定的操作系统和区域设置。

如果指定的字体不可用,MATLAB将使用运行应用程序的系统上可用的字体中的最佳匹配。

字体大小,指定为正数。测量单位是像素。默认字体大小取决于特定的操作系统和区域设置。

例子:14

字体权重,指定为以下值之一:

  • “正常”-由特定字体定义的默认重量

  • “大胆”-较粗的字符轮廓“正常”

并非所有字体都有粗体字体粗体。对于没有的字体,指定“大胆”结果显示正常字体粗细。

字体角度,指定为“正常”“斜体”.不是所有字体都有斜体角度。对于没有的字体,指定“斜体”结果字体角度正常。

字体大小单位,指定为“像素”

交互性

全部展开

表可见性,指定为“上”“关闭”.当可见“关闭”,该表不可见,但可以查询和设置其属性。

要使应用程序启动更快,请设置可见初始时未显示给的所有组件的“关闭”

表的运行状态,指定为“上”“关闭”.的启用属性控制表是否响应用户交互。有两个可能的值:

  • “上”—该表处于可运行状态。

  • “关闭”—表显示为灰色,不响应用户交互。

工具提示,指定为字符向量、字符向量的单元格数组、字符串数组或1-D分类数组。使用此属性可在用户在运行时将指针悬停在组件上时显示一条消息。即使禁用了组件,也会显示工具提示。若要显示多行文本,请指定字符向量的单元格数组或字符串数组。数组中的每个元素都成为一个单独的文本行。如果将此属性指定为分类数组,MATLAB将使用数组中的值,而不是全部类别集。

颜色和样式

全部展开

单元格文本颜色,指定为RGB三元组、十六进制颜色代码或表中列出的颜色选项之一。属性设置单元格文本颜色时ForegroundColor属性,它应用于表格UI组件中的所有单元格。

RGB三组和十六进制颜色代码对于指定自定义颜色很有用。

  • RGB三元组是一个三元素行向量,其元素指定颜色的红、绿和蓝分量的强度。强度必须在这个范围内[0, 1];例如,[0.4 0.6 0.7]

  • 十六进制颜色码是字符向量或以散列符号()后面跟着三个或六个十六进制数字,取值范围为0F.这些值不区分大小写。因此,颜色代码“# FF8800”“# ff8800”“# F80”,“# f80”是等价的。

或者,您可以通过名称指定一些常用颜色。该表列出了已命名的颜色选项、等效的RGB三元组和十六进制颜色代码。

颜色名称 短名称 RGB值 十六进制颜色代码 外观
“红色” “r” [10 0 0] “# FF0000”

“绿色” ‘g’ [0 10 0] “# 00 ff00”

“蓝” “b” [0 0 1] “# 0000 ff”

“青色” “c” [0 1 1] “# 00飞行符”

“红色” “米” [10 0 1] “#就”

“黄色” “y” [11 10 0] “# FFFF00”

“黑” “k” [0 0 0] # 000000的

“白色” ' w ' [1 1 1] “# FFFFFF”

下面是MATLAB在许多类型的图中使用的默认颜色的RGB三组和十六进制颜色代码。

RGB值 十六进制颜色代码 外观
[0 0.4470 0.7410] “# 0072 bd”

[0.8500 0.3250 0.0980] “# D95319”

[0.9290 0.6940 0.1250] “# EDB120”

[0.4940 0.1840 0.5560] “# 7 e2f8e”

[0.4660 0.6740 0.1880] “# 77 ac30”

[0.3010 0.7450 0.9330] “# 4 dbeee”

[0.6350 0.0780 0.1840] “# A2142F”

表背景色,指定为RGB三元组或RGB三元组的-by-3矩阵。RGB三元组是一个行向量,它指定颜色的红色、绿色和蓝色成分的强度。强度必须在这个范围内,[0, 1].颜色名称无效。

指定一个-by-3矩阵,当您希望表行的底纹遵循的重复模式时不同的颜色。矩阵的每一行都必须是RGB三元组。MATLAB中使用行的矩阵当RowStriping属性是“上”.表背景没有条纹,除非两者都有RowStriping“上”写成BackgroundColor是一个3矩阵。

例子:uit = uitable(ufigure,'Data',rand(10,3),'BackgroundColor',[0.85 0.85 1])

例子:uit = uitable(ufigure,'Data',rand(10,3),'BackgroundColor',[1 1 1;0.85 0.85 1])

下表列出了特定颜色的RGB三元组。

颜色 RGB值
黄色的 [11 10 0]
品红色的 [10 0 1]
青色 [0 1 1]
红色的 [10 0 0]
绿色 [0 10 0]
蓝色的 [0 0 1]
白色 [1 1 1]
黑色的 [0 0 0]

交替行底纹,指定为“上”“关闭”.此属性控制表行的底纹模式。

RowStriping值设置为“上”,写成BackgroundColor矩阵指定以重复模式显示的行颜色。如果写成BackgroundColor矩阵只有一行,那么所有表行的底纹是相同的。

RowStriping设置为“关闭”,然后在第一个颜色写成BackgroundColor矩阵定义了表格中所有行的底纹。

位置

全部展开

表的位置和大小,指定为窗体的四个元素向量[左下宽高].该表描述了向量中的每个元素。

元素 描述
父容器左内边缘到表左外边缘的距离
父容器的内底边到表的外底边的距离
宽度 表的左右外边缘之间的距离
高度 表的顶部和底部外边缘之间的距离

所有的测量单位都由单位财产。

位置值相对于可拉的区域父容器的。可绘制区域是容器边界内的区域,不包括菜单栏或标题等装饰所占用的区域。

表的位置和大小,指定为窗体的四个元素向量[左下宽高].所有的测量单位都由单位财产。

属性值与位置OuterPosition属性值。

表的位置和大小,指定为窗体的四个元素向量[左下宽高].所有的测量单位都由单位财产。

属性值与位置InnerPosition属性值。

计量单位,指定为“像素”.MATLAB从父对象的左下角开始测量所有单位。

布局选项,指定为GridLayoutOptions对象。此属性指定网格布局容器的子组件的选项。如果组件不是网格布局容器的子组件(例如,它是图形或面板的子组件),则此属性为空,没有作用。但是,如果组件是网格布局容器的子元素,则可以将组件放置在网格的所需行和列中属性GridLayoutOptions对象。

例如,这段代码将一个表UI组件放在其父网格的第三行和第二列中。

G = uigridlayout([4 3]);Uit = uitable(g,“数据”3),兰德(10);unit . layout . row = 3;unit . layout . column = 2;

要使表跨多行或多列,请指定属性作为两元素向量。例如,这个表跨列2通过3.

unit . layout . column = [2 3];

回调

全部展开

单元格编辑回调函数,指定为以下值之一:

  • 一个函数句柄。

  • 第一个元素为函数句柄的单元格数组。单元格数组中的后续元素是传递给回调函数的参数。

  • 包含有效MATLAB表达式的字符向量(不推荐)。MATLAB在基本工作空间中计算这个表达式。

当应用程序用户更改表格单元格的内容时,使用此回调函数执行计算或验证输入。

这个回调函数可以访问关于用户与单元格交互的特定信息(比如单元格索引)。MATLAB将此信息传递到CellEditData对象作为回调函数的第二个参数。在App Designer中,这个参数被调用事件.可以使用点表示法查询对象属性。例如,事件。指数返回选定单元格的索引。的CellEditData对象对于指定为字符向量的回调函数不可用。

属性的属性说明如下CellEditData对象。

财产

描述

指数

这是一个1 × 2的数组,包含用户在运行的应用程序中编辑的单元格的行和列索引。指数返回单元格在排序之前的原始1 × 2数组DisplayIndices返回在排序表中可视显示的编辑单元格的新位置。

DisplayIndices

这是一个1 × 2的数组,包含与已排序表的显示中已编辑单元格的位置对应的行和列索引。如果用户不对列进行排序,则DisplayIndices内容与指数财产。

PreviousData

这是之前的单元格数据。默认是一个空矩阵,[]

EditData

这是用户输入的值。

NewData

这是MATLAB写的值数据属性数组。

NewData如果MATLAB在用户输入的数据中检测到错误,则属性为空。

错误

这是当MATLAB在用户输入的数据中检测到错误时返回的错误消息。

错误属性为空时,MATLAB成功地将值写入数据财产。

如果错误属性不是空的,那么CellEditCallback可以显示消息,也可以尝试修复问题。

组件执行回调。

EventName

“CellEdit”

当用户编辑一个表格单元格时,MATLAB执行以下步骤:

  1. 方法中存储新值数据表的属性

  2. 调用CellEditCallback函数(如果存在)

如果该值导致错误,且没有CellEditCallback函数,然后单元格数据恢复到以前的值,并且不显示错误。

有关编写回调函数的详细信息,请参见在应用程序设计器中编写回调

单元格选择回调函数,指定为以下值之一:

  • 一个函数句柄。

  • 第一个元素为函数句柄的单元格数组。单元格数组中的后续元素是传递给回调函数的参数。

  • 包含有效MATLAB表达式的字符向量(不推荐)。MATLAB在基本工作空间中计算这个表达式。

该回调函数在用户选择单元格时执行。单个数据单元格(不是行或列标题)可以通过单击或使用方向键导航到它来选择。可以使用表中描述的任何操作选择多个单元格。选择多个单元格时,根据它们是连续的还是不连续的使用不同的操作。

连续选择选项
单击单元格并拖动。
然后单击一个单元格Shift +点击另一个单元格选择中间的所有单元格。
然后单击一个单元格Shift +箭头键添加相邻的单元格。
单击行或列标头以选择整个行或列。
然后单击一个单元格Ctrl + space以选择该列中的所有单元格(不管是否所有单元格都在视图中)。
然后单击一个单元格Shift +空间选择该行中的所有单元格(不管是否所有单元格都在视图中)。
选择行或列。然后Shift +点击另一个行或列标头用于选择其中的所有行或列。
然后单击一个单元格Shift + PgUpShift + PgDn以选择该单元格上方或下方的所有可见单元格。
新闻Ctrl +一个以选择表中的所有单元格

不连续的选择选项
单击并拖动以选择一组连续的单元格(或选择单个单元格)。然后,Ctrl +单击聚焦另一个细胞,最后Shift +点击以选择焦点中的单元格,或Shift +点击并拖动以选择从其扩展的单元格范围。(按Shift +箭头键也可以选择多个单元格。)
Ctrl +单击在行或列标头上选择整个行或列。然后重复选择另一个不相邻的行或列。

当一个单元被聚焦使用时Ctrl +单击时,单元格轮廓变为蓝色()。当使用单击或选择单元格时Shift +点击时,单元格填充颜色变为蓝色().

这个回调函数可以访问关于用户与单元格交互的特定信息(比如单元格索引)。MATLAB将此信息传递到CellSelectionChangeData对象作为回调函数的第二个参数。在App Designer中,这个参数被调用事件.可以使用点表示法查询对象属性。例如,事件。指数返回选定单元格的索引。的CellSelectionChangeData对象对于指定为字符向量的回调函数不可用。

属性的属性说明如下CellSelectionChangeData对象。

财产

描述

指数

这是一个n-by-2数组,包含用户在运行的应用程序中选择的单元格的行索引和列索引。对于表数组中的多列变量,列索引指的是整个列。当一列被排序时,指数返回单元格在排序之前的原始1 × 2数组DisplayIndices返回所选单元格的新位置,该位置可视地显示在已排序的表中。

DisplayIndices

这是一个n-by-2数组,其中包含与已排序表的显示中所选单元格的位置对应的行和列索引。如果用户没有对表进行排序,那么DisplayIndices内容与指数财产。

组件执行回调。

EventName

“CellSelection”

有关编写回调函数的详细信息,请参见在应用程序设计器中编写回调

回调函数,指定为以下值之一:

  • 一个函数句柄。

  • 第一个元素为函数句柄的单元格数组。单元格数组中的后续元素是传递给回调函数的参数。

  • 包含有效MATLAB表达式的字符向量(不推荐)。MATLAB在基本工作空间中计算这个表达式。

函数时执行此回调DisplayData更改,因为用户要么编辑单元格,要么对表的列进行排序。

的用户交互信息,请使用此回调函数DisplayData改变。如果需要关于已编辑单元格的特定信息,请创建CellEditCallback代替。

这个回调函数可以访问有关列是否被排序或单元格是否被编辑的特定信息。MATLAB将此信息传递到DisplayDataChangedData对象作为回调函数的第二个参数。在App Designer中,这个参数被调用事件.可以使用点表示法查询对象属性。例如,事件。InteractionColumn返回在中与之交互的列的索引数据.的DisplayDataChangedData对象对于指定为字符向量的回调函数不可用。

财产 描述
DisplayRowName 单元格阵列RowName排序显示中的属性值。DisplayRowName将永远是原来的一种排列RowName财产。
DisplayColumnName 单元格阵列ColumnName排序显示中的属性值。DisplayColumnName将永远是原来的一种排列ColumnName财产。
交互 “排序”“编辑”
InteractionColumn 中的已修改列的索引数据
InteractionDisplayColumn 中的已修改列的索引DisplayData
InteractionVariable VariableNames属性用于表数组数据的已修改列。如果数据则包含表数组以外的数据类型InteractionVariable返回一个空字符数组。
组件执行回调。
EventName

“DisplayDataChanged”

有关将回调指定为函数句柄、单元格数组或字符向量的详细信息,请参见在应用程序设计器中编写回调

对象创建函数,指定为以下值之一:

  • 函数处理。

  • 单元格数组,其中第一个元素是函数句柄。单元格数组中的后续元素是传递给回调函数的参数。

  • 包含有效MATLAB表达式的字符向量(不推荐)。MATLAB在基本工作空间中计算这个表达式。

有关将回调指定为函数句柄、单元格数组或字符向量的详细信息,请参见在应用程序设计器中编写回调

此属性指定在MATLAB创建对象时执行的回调函数。函数执行之前,MATLAB初始化所有属性值CreateFcn回调。如果没有指定CreateFcn属性,然后MATLAB执行默认的创建函数。

设置CreateFcn属性在现有组件上不起作用。

如果将此属性指定为函数句柄或单元格数组,则可以使用回调函数的第一个参数访问正在创建的对象。否则,使用gcbo函数来访问对象。

对象删除函数,指定为以下值之一:

  • 函数处理。

  • 单元格数组,其中第一个元素是函数句柄。单元格数组中的后续元素是传递给回调函数的参数。

  • 包含有效MATLAB表达式的字符向量(不推荐)。MATLAB在基本工作空间中计算这个表达式。

有关将回调指定为函数句柄、单元格数组或字符向量的详细信息,请参见在应用程序设计器中编写回调

此属性指定在MATLAB删除对象时执行的回调函数。MATLAB执行DeleteFcn在销毁对象的属性之前。如果没有指定DeleteFcn属性,然后MATLAB执行默认删除函数。

如果将此属性指定为函数句柄或单元格数组,则可以使用回调函数的第一个参数访问正在删除的对象。否则,使用gcbo函数来访问对象。

回调执行控制

全部展开

回调中断,指定为“上”“关闭”.的可中断属性确定正在运行的回调是否可以中断。

有两种回调状态需要考虑:

  • 运行Callback是当前正在执行的Callback。

  • 打断回调是试图中断正在运行的回调的回调。

每当MATLAB调用回调时,该回调都会试图中断正在运行的回调(如果存在的话)。的可中断属性决定是否允许中断。的可中断属性有两个可能的值:

  • “上”-允许其他回调中断对象的回调。中断发生在MATLAB处理队列的下一个点,例如当存在drawnow数字uifiguregetframe等待,或暂停命令。

    • 如果正在运行的回调包含这些命令之一,那么MATLAB将在该点停止回调的执行并执行中断回调。当中断回调完成时,MATLAB恢复执行正在运行的回调。

    • 如果正在运行的回调不包含这些命令之一,那么MATLAB将不间断地完成回调的执行。

  • “关闭”—阻断所有中断尝试。的BusyAction拥有中断回调的对象的属性决定中断回调是被丢弃还是放入队列。

请注意

回调中断和执行在以下情况下表现不同:

  • 如果中断回调是DeleteFcnCloseRequestFcnSizeChangedFcn回调函数时,中断发生,而不管可中断属性值。

  • 方法当前正在执行等待函数,则中断发生而不管可中断属性值。

  • 计时器对象根据调度执行,而不管可中断属性值。

当中断发生时,MATLAB不保存属性的状态或显示。方法返回的对象gcagcf命令可能在执行另一个回调时更改。

回调队列,指定为“队列”“取消”.的BusyAction属性决定MATLAB如何处理中断回调的执行。有两种回调状态需要考虑:

  • 运行Callback是当前正在执行的Callback。

  • 打断回调是试图中断正在运行的回调的回调。

每当MATLAB调用回调时,该回调都会试图中断正在运行的回调。的可中断属性决定是否允许中断。如果不允许中断,则BusyAction拥有中断回调的对象的属性确定它是被丢弃还是放入队列中。的可能值BusyAction属性:

  • “队列”—将中断的回调放到队列中,待正在运行的回调执行完成后再处理。

  • “取消”—不执行中断回调。

此属性是只读的。

删除状态,返回为“关闭”“上”.MATLAB设置BeingDeleted财产“上”DeleteFcn回调开始执行。的BeingDeleted属性仍然设置为“上”直到组件对象不再存在。

的值BeingDeleted属性在查询或修改对象之前验证对象是否即将被删除。

父/子

全部展开

父容器,指定为数字对象创建。uifigure函数,或者它的子容器之一:选项卡面板ButtonGroup,或GridLayout.如果没有指定容器,MATLAB将调用uifigure函数创建一个新的数字对象,该对象用作父容器。

表的子数组,返回为空数组。表对象没有子对象,因此设置此属性无效。

对象句柄的可见性,指定为“上”“回调”,或“关闭”

此属性控制对象在其父对象的子列表中的可见性。当一个对象在其父对象的子列表中不可见时,通过搜索对象层次结构或查询属性获取对象的函数将不会返回该对象。这些函数包括得到findobjclf,关闭.对象即使不可见也是有效的。如果可以访问对象,就可以设置和获取其属性,并将其传递给对对象进行操作的任何函数。

HandleVisibility价值 描述
“上” 对象总是可见的。
“回调” 对象在回调或回调调用的函数中可见,但在从命令行调用的函数中不可见。此选项阻止在命令行访问对象,但允许回调函数访问它。
“关闭” 这个物体在任何时候都是看不见的。此选项对于防止另一个函数对UI的意外更改非常有用。设置HandleVisibility“关闭”在函数执行期间暂时隐藏对象。

标识符

全部展开

此属性是只读的。

图形对象的类型,返回为场上的

对象标识符,指定为字符向量或字符串标量。您可以指定一个惟一的标签值作为对象的标识符。方法在代码中的其他地方需要访问对象时,可以使用findobj方法搜索对象标签价值。

用户数据,指定为任意MATLAB数组。例如,您可以指定标量、向量、矩阵、单元格数组、字符数组、表或结构。使用此属性可在对象上存储任意数据。

如果您在应用程序设计器中工作,请在应用程序中创建公共或私有属性以共享数据,而不是使用用户数据财产。有关更多信息,请参见在应用设计器应用中共享数据

在R2016b中引入