表属性

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

属性创建的应用程序中的表,这里列出的属性是有效的数字功能。如果您使用的应用程序设计器或uifigure功能,参见表属性代替。欲了解更多信息,请参阅指导迁移策略

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

f =图;t = uitable(f,'Data',[1 2 3;4 5 6;7 8 9]);t。F在tSize = 9;

全部展开

表数据,指定为数字数组、逻辑数组或单元格数组。表数据可以是任何数字类型,合乎逻辑,或字符。使用一个单元阵列,以指定不同的数据类型的混合物。

表中的数据被显示在由指定的格式ColumnFormat财产。如果在表中的数据的数据类型和的值之间的不匹配ColumnFormat财产,MATLAB®将数据转换或显示警告。查看ColumnFormat有关更多信息,请参见属性说明。

若要防止用户输入无效数据时可能出现的警告,请写入CellEditCallback函数将数据转换为适当的类型。

如果行数数据属性中元素的数目不匹配RowName数组,则结果表中的行数是两个值中较大的那个。同样的道理也适用于的ColumnName属性中的列数不匹配数据属性数组。

例:T = uitable( '数据',兰特(10,3))

例:t = uitable('Data',{'blue' 5 true;“橙色”25日假})

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

  • “编号”-列标题是连续的数字,从1

  • 字符向量或分类数组的单元数组——数组的每个元素成为列的名称。如果指定了1——- - - - - -ñ单元阵列,MATLAB存储并返回值作为ñ——- - - - - -1单元阵列。如果指定了——- - - - - -ñ用MATLAB将数组整形成列向量。通过包含一个垂直斜杠(|)在列名中。例如,值,“电话|号码”,在单词“Telephone”和“Number”之间生成带有换行字符的列标题。

  • 空单元阵列({}) - 表中没有列标题。

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

的列数数据属性中元素的数目不匹配的ColumnName阵列,则列在所得到的表的数量为两个值中的较大者。

例:T = uitable( '的ColumnName',{ '名称'; '编号'}, '数据',{ '鲍勃' 5})

例:t =场上(ColumnName,{“名称”;“数据”[]},{5}“鲍勃”)

例:T = uitable( '的ColumnName',{ '名称'; '电话|号码'}, '数据',{ '鲍勃', '555-1212'})

表列的宽度,指定为'汽车'或作为1——- - - - - -ñ单元阵列。

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

您可以将固定的列宽和'汽车'列宽的单元阵列,也可以指定的单个值'汽车'使所有列宽自动。

选择汽车的宽度在表属性编辑器有如设置相同的效果ColumnWidth属性'汽车'

例:T = uitable( 'columnWidth时', '汽车', '数据',[1 2 3 4 5 6])

例:T = uitable( 'columnWidth时',{64 60 40}, '数据',[1 2 3 4 5 6])

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

能够编辑列单元格,规定为:

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

  • 逻辑1——- - - - - -ñ数组——这个数组指定哪些列是可编辑的。n的值等于表中的列数。数组中的每个值对应一个表列。的价值真正的使该列中的单元格可编辑。的价值使该列中的单元格不可编辑。

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

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

例:t =场上(“数据”,兰德(10,3),“ColumnEditable”,假)

包含复选框或弹出菜单的表列必须是可编辑的,以便用户可以与这些控件交互。

细胞显示格式,指定为一个空单元阵列或一个1——- - - - - -ñ字符向量的单元阵列。

此属性确定如何显示每个列中的数据,以及在UI中编辑该数据的约束。单元格数组的元素对应于数据属性数组。如果不希望为特定列指定显示格式,请指定[]该列。如果没有为列指定格式,MATLAB确定由单元格中的数据的数据类型的默认显示。

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

单元格格价值

描述

“字符”

显示左对齐的值

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

如果一个元素数据属性数组是合乎逻辑的,然后真正的出现在表中。

“逻辑”

显示复选框。

要编辑单元格,用户选择或清除复选框。然后,MATLAB对其进行相应的设置数据真正的

ColumnEditable属性值必须为真正的允许用户选择或不选择的复选框。

最初,当相应的数据值是真正的。在对应的值数据属性数组的类型必须是合乎逻辑确保数据在表中正确显示。

“数字”

显示与数值数据的命令窗口显示相同的右对齐值。如果一个元素数据属性数组是合乎逻辑的,然后10出现在表中。如果一个元素数据属性阵列不是数字,而不是逻辑,然后为NaN出现在表中。

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

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

一种1——- - - - - -ñ字符向量的单元数组,如{“一”“两个”“三个”}

显示一个弹出菜单。

要编辑单元格,用户从弹出菜单中选择一个项。MATLAB设置相应的数据属性数组值到所选择的菜单项。该ColumnEditable属性值必须为真正的允许用户选择弹出菜单项。

方法接受的格式名称格式功能,如:“短”“长”

显示数据使用指定格式的属性值。

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

如果ColumnFormat值定义一个弹出菜单,即初始菜单数据值并不一定是在该菜单中的选项之一。最初的数据值将出现,直到用户做出不同的选择。

举例来说,假设数据对于一个给定列的属性值是“选择”对于所有的行,和ColumnFormat值指定使用的选项的弹出式菜单“组1”“组2”。当MATLAB创建表,那些表单元格显示“选择”直到用户选择弹出菜单中的项目:

f =图;myData = {'Andrew' 31 'Male' ' select ';…Bob' 41 'Male' Choose';…'Anne' 20 'Female' Choose';};t = uitable('Parent', f,…'Position',[25 25 334 78],…“ColumnFormat”({[][][]{的组1组2的}}),…“ColumnEditable”,真的,… 'Data', myData);

可编辑列的数据显示

此表描述数据类型如何将各种具体的显示ColumnFormat值。

ColumnFormat
“数字” “字符” “逻辑”
数据阵列值的数据类型 任何数值类型 表显示数原样。 MATLAB将值转换为文本并在表中以左对齐方式显示。如果MATLAB无法转换该值,则为NaN显示器。 不建议。当用户编辑细胞MATLAB可能会返回一个警告,除非你定义一个CellEditCallback功能。
字符 表显示的值右对齐,就好像它是一个数字。 表显示原样的值。 不建议。当用户编辑细胞MATLAB可能会返回一个警告,除非你定义一个CellEditCallback功能。
合乎逻辑 表显示的逻辑值作为数字。当用户编辑细胞MATLAB可能会返回一个警告,除非你定义一个CellEditCallback功能。 表显示逻辑值作为左对齐“真正的”'假'。当用户编辑细胞MATLAB可能会返回一个警告,除非你定义一个CellEditCallback功能。 表显示逻辑值为复选框。

例如,在下表中,第一列(X-Data)左对齐,因为ColumnFormat该列的值为“字符”

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

  • “编号”- 行标题是开始于序列号1

  • 字符向量或分类阵列的单元阵列 - 的阵列的每个元件成为一列的名称。行名被限制为一行文本。如果指定了1——- - - - - -ñ单元阵列,MATLAB存储并返回值作为ñ——- - - - - -1单元阵列。如果指定了——- - - - - -ñ用MATLAB将数组整形成列向量。

  • 空单元阵列({}) -该表没有行标题。

  • 空矩阵([]) - 该表没有行标题

如果行数数据属性中元素的数目不匹配RowName数组,则结果表中的行数是两个值中较大的那个。

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

例:T = uitable( 'RowName',{ '名称'; []}, '数据',{ '鲍勃'; 5})

能够重新排列表格列,指定为“关”'上'。该属性可通过单击并拖动列标题,让用户重新排序表中的列(而不是标签)。

请注意

在UI重新排列表格列,不影响在列数据属性数组。

字形

全部展开

字体名称,指定为系统支持的字体名称或万博1manbetx“FixedWidth”。默认字体取决于具体的操作系统和语言环境。

要使用固定宽度字体在任何语言环境看起来不错,指定“FixedWidth”。所使用的实际的固定宽度的字体依赖于FixedWidthFontName根对象的属性。改变了FixedWidthFontName性能使显示器使用新字体的即时更新。

例:“宋体”

字体大小,指定为正数。该FontUnits属性指定的单位。默认大小取决于系统。

例:12

例:12.5

字体重量,指定为从下面的表中的值。

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

  • “大胆”- 厚性格轮廓比正常

MATLAB使用fontWeight设置属性从系统中可用的字体中选择一种字体。并不是所有的字体都有粗体粗细。因此,指定粗体字体权重仍然可以得到正常的字体权重。

请注意

“光”“黛米”字体的权重值已被删除在R2014b。如果您指定这些值中的一个,结果是一个正常的字体权重。

字体角度,规定为“正常”“斜体”。MATLAB使用此属性从系统中可用的字体中选择一种字体。将此属性设置为“斜体”选择一个倾斜字体的版本,如果您的系统上。

请注意

'斜'值已被删除。使用“斜体”代替。

字体单位,指定为该表中的值之一。

单位价值 描述
“点” 点。一个点是1/72英寸。
“规范化” 将字体大小指定为高度的一部分的规范化值。当您调整UI组件的大小时,MATLAB会缩放显示的字体以保持这个比例。
“英寸” 英寸。
“厘米” 厘米。
'像素'

像素。

在R2015b开始,以像素为单位的距离是独立的Windows系统的分辨率®麦金塔电脑系统:

  • 在Windows系统中,像素是一英寸的1 /第96。

  • 麦金塔电脑系统中,一个像素是一英寸的1/72。

在Linux上®系统,像素的大小是由您的系统分辨率决定。

交互性

全部展开

表可见性,指定为'上'“关”。什么时候可见“关”,表是不可见的,但您可以查询并设置它的属性。

为了让您的应用程序启动速度更快,设置可见最初未显示所有组件的属性“关”

表的操作状态,指定为'上'“关”,或“无效”。该启用属性控制是否UI组件响应于按钮的点击。该三个可能的值:

  • '上'- UI组件是可操作的。

  • “关”- 该UI组件不可操作,并显示灰色。

  • “无效”- 该UI组件不可操作,但它具有外观时相同启用'上'

的价值启用财产和按钮点击的类型决定了用户界面响应。

使价值 响应左键单击 响应单击右键
'上'

CellSelectionCallback函数执行(仅针对表单元格,而不是标头单元格)。该指数属性更新MATLAB传递给回调函数的回调数据对象中的属性。

  1. 人物的WindowButtonDownFcn回调执行。

  2. ButtonDownFcn回调执行。

“关”“无效”

  1. 人物的WindowButtonDownFcn回调执行。

  2. ButtonDownFcn回调执行。

  1. 人物的WindowButtonDownFcn回调执行。

  2. ButtonDownFcn回调执行。

工具提示,指定为字符向量、字符串标量或分类数组。当用户在运行时将指针悬停在组件上时,使用此属性显示一条消息。当组件被禁用时,工具提示不会显示。如果将此属性指定为类别数组,MATLAB将使用数组中的值,而不是整个类别集合。

要创建多行文本,使用的sprintf函数来插入换行字符(' \ n ')。例如:

TXT = sprintf的('行1 \ n线2');

然后设置提示属性返回的值的sprintf

上下文菜单,指定为上下文菜单宾语。使用此属性显示上下文菜单时,在UI组件在用户右键点击。创建使用上下文菜单uicontextmenu功能。

工具提示,指定为字符向量、字符串标量或分类数组。当用户将鼠标指针悬停在应用程序的组件上时,将显示工具提示。如果您将此属性指定为一个分类数组,MATLAB将使用数组中的值,而不是完整的类别集。

请注意

TooltipString不建议从R2018b开始使用属性。使用提示财产。

请注意

的行为属性在R2014b中发生了变化,不推荐使用。它不再有任何影响对象。此属性可能会在未来的版本中删除。

请注意

的行为SelectionHighlight属性在R2014b中发生了变化,不推荐使用。它不再有任何影响对象。此属性可能会在未来的版本中删除。

色彩和造型

全部展开

细胞文本颜色,指定为一个RGB三元组,一个十六进制颜色代码,或在表中列出的颜色选项之一。

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

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

  • 十六进制颜色代码是一个以散列符号(),接着的三个或六个十六进制数字,它的范围可以从0F。这些值不区分大小写。因此,颜色代码“# FF8800”'#ff8800'“# F80”,'#F80'是等价的。

或者,您可以通过名称指定一些常见的颜色。这个表列出了指定的颜色选项、等效的RGB三联表和十六进制颜色代码。

颜色名称 短名称 RGB三元 十六进制颜色代码 外观
“红色” 'R' (1 0 0) '#FF0000'

'绿色' ‘g’ (0 1 0) '#00FF00'

“蓝” “b” [0 0 1] '#0000FF'

“青色” “c” (0 1 1) “# 00飞行符”

'品红' 'M' (1 0 1) “#就”

“黄色” “y” [1 1 0] '#FFFF00'

'黑色' 数k [0 0 0] # 000000的

'白色' 'W' [1 1 1] '#FFFFFF'

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

RGB三元 十六进制颜色代码 外观
[0 0.4470 - 0.7410) '#0072BD'

[0.8500 0.3250 0.0980] '#D95319'

(0.9290 0.6940 0.1250) “# EDB120”

[0.4940 0.1840 0.5560] '#7E2F8E'

[0.4660 0.6740 0.1880] “# 77 ac30”

[0.3010 0.7450 0.9330] '#4DBEEE'

(0.6350 0.0780 0.1840) '#A2142F'

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

指定一个m×3的矩阵,当您希望表格行的阴影遵循m种不同颜色的重复模式时。矩阵的每一行必须是一个RGB三元组。MATLAB使用矩阵的行当RowStriping属性是'上'。表格的背景不条纹除非两个RowStriping'上'背景颜色是m×3矩阵。

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

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

下表列出了特定颜色的RGB三胞胎。

颜色 RGB三元
黄色 [1 1 0]
品红色的 (1 0 1)
青色 (0 1 1)
红色 (1 0 0)
绿色 (0 1 0)
蓝色 [0 0 1]
白色 [1 1 1]
黑色的 [0 0 0]

交替行阴影,指定为'上'“关”。此属性控制表行的阴影模式。

RowStriping值被设置为'上',背景颜色矩阵指定要在重复模式中显示的行颜色。如果背景颜色矩阵只有一行,那么所有表行中的阴影都是相同的。

什么时候RowStriping设定为“关”,然后是第一个颜色背景颜色矩阵定义了表中所有行的底纹。

位置

全部展开

位置和大小,指定为以下形式的四元素矢量[左下宽高]。此表描述向量中的每个元素。

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

所有的测量单位由指定的单位财产。

请注意

位置值是相对父容器的绘制区域。可绘制区域是容器边界内的区域,不包括标题占用的区域。如果父容器是一个图形,那么可绘制区域也不包括菜单栏和工具栏。

使用程度属性,以确定适当的大小为表相对于所述数据。设置宽度高度位置属性的宽度和高度程度财产。请注意,如果表有较大的区段,那么这样做可能会导致表扩展到其父容器的右侧或顶部边缘之外。

示例:设置宽度和高度以适应数据大小

如果你想改变在一个或两个连续的值,你可以结合点符号和数组索引位置向量。例如,该代码将表以匹配的宽度和高度程度表的:

ui表(t =“数据”3),兰德(10);t.Position (3:4) = t.Extent (3:4);

位置和大小,指定为以下形式的四元素矢量[左下宽高]。所有的测量单位由指定的单位财产。

此属性值与位置OuterPosition属性值。

位置和大小,指定为以下形式的四元素矢量[左下宽高]。所有的测量单位由指定的单位财产。

此属性值与位置InnerPosition属性值。

此属性是只读的。

外接矩形的大小,作为四元素行向量返回。向量的前两个元素总是0。第三和第四个元素分别是包含表的矩形的宽度和高度。所有的测量单位由指定的单位财产。

MATLAB根据电流确定矩形的大小数据RowName的ColumnName属性值。MATLAB使用列宽和行宽估计宽度和高度值。估计的范围可以比数字大。

考虑使用程度指定的宽度和高度值时,属性值位置财产。

计量单位,指定为从该表中的值之一。

单位价值 描述
'像素'(默认)

像素。

从R2015b开始,像素的距离是独立于你的系统分辨率的Windows和麦金塔电脑系统:

  • 在Windows系统中,像素是一英寸的1 /第96。

  • 麦金塔电脑系统中,一个像素是一英寸的1/72。

在Linux系统中,像素的大小是由您的系统分辨率决定。

“规范化” 这些单元是相对于父容器标准化的。容器的左下角映射到(0,0)和右上角映射到(1,1)
“英寸” 英寸。
“厘米” 厘米。
“点” 点。一点等于一英寸的1/72。
“人物”

这些单元基于所述图形根对象的默认字体uicontrol:

  • 字符宽度=字母的宽度X

  • 字符高度=距离的两行文本基线之间。

要访问默认的uicontrol字体,请使用得到(格鲁特, 'defaultuicontrolFontName')集(格鲁特, 'defaultuicontrolFontName')

MATLAB测量从父对象的左下角的所有单位。

此属性影响位置财产。如果你改变了单位属性,请考虑在完成计算后将其值返回到默认值,以避免影响采用默认值的其他函数。

指定的顺序单位位置属性有以下效果:

  • 如果你指定单位之前位置属性,然后MATLAB集位置使用您指定的单位。

  • 如果你指定单位财产后位置属性,MATLAB使用默认设置位置单位。然后,MATLAB将位置值转换为您指定的单元中的等效值。

回调

全部展开

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

  • 一个处理函数。

  • 的细胞阵列,其中所述第一元件是一个功能句柄。在单元阵列中随后的元件是要传递给回调函数的参数。

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

有关指定的回调特性值作为函数手柄,电池阵列,或字符向量的更多信息,请参见如何指定回调属性值

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

如果指定该属性作为功能句柄(或含有功能句柄单元阵列),MATLAB穿过的CellEditData对象,该对象包含作为回调函数的第二个参数的事件数据。此对象包含下表中描述的属性。您可以使用点表示法在回调函数中访问这些属性。

财产

描述

指数

包含用户编辑的单元格的行和列索引的1×2数组。

PreviousData

以前的电池数据。默认是一个空矩阵,[]

EditData

用户输入的值。

新数据

值MATLAB致函数据属性数组。这个值与EditData或经转换的值。

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

错误

如果MATLAB检测到用户输入数据中的错误,则返回错误消息。

错误当MATLAB成功地将值写入数据财产。

如果错误属性不是空的,则CellEditCallback可以显示该消息,或者它可以尝试解决该问题。

资源

正在执行的表对象CellEditCallback功能。

EventName

'CellEdit'

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

  1. 尝试将新值存储到数据表的属性

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

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

示例:评估用户输入

这个例子显示了如何创建一个数字表格单元格计算用户输入数据的回调函数。将此代码粘贴到编辑器,并运行它,看看它是如何工作的。

函数myui F =图。MYDATA的= {'一种 '31日;'B'41;'C'5;'d'2.6};ui表(t =“父”f...“位置”[25 25 700 200],...“数据”,MYDATA的,...“ColumnEditable”(虚假的真实),...“CellEditCallback”,@ converttonum);函数converttonum(hObject,callbackdata)numval = EVAL(callbackdata.EditData);R = callbackdata.Indices(1)C = callbackdata.Indices(2)hObject.Data {R,C} = numval;结束结束

当您运行myui,您可以更改表第二列中的值。作为回应,converttonum回调函数执行。该converttonum函数使用EVAL函数来评估您的输入。然后,它将单元格数据设置为的值numval。例如,如果您输入π1 + 1,converttonum函数将表格单元格值设置为输入的数字表示形式。因为没有错误检查converttonum功能无效表达式返回一个错误和表格单元格的新值变为为NaN

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

  • 一个处理函数。

  • 的细胞阵列,其中所述第一元件是一个功能句柄。在单元阵列中随后的元件是要传递给回调函数的参数。

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

有关指定的回调特性值作为函数手柄,电池阵列,或字符向量的更多信息,请参见如何指定回调属性值

这个回调函数在用户执行以下操作时执行:

  • 亮点通过单击或导航到它用箭头键的数据单元(未一行或一列标题单元)

  • 通过保持选择单元的矩形组转移键的同时选择所述细胞

  • 使细胞失选Ctrl点击它

如果指定该属性作为功能句柄(或含有功能句柄单元阵列),MATLAB穿过的CellSelectionChangeData对象,该对象包含作为回调函数的第二个参数的事件数据。此对象包含下表中列出的属性。

财产

描述

指数

包含用户选择的单元格的行和列索引的n×2数组。

资源

正在执行的表对象CellSelectionCallback功能。

EventName

“CellSelection”

按钮按下的回调函数,指定为这些值之一:

  • 一个处理函数。

  • 的细胞阵列,其中所述第一元件是一个功能句柄。在单元阵列中随后的元件是要传递给回调函数的参数。

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

有关指定的回调特性值作为函数手柄,电池阵列,或字符向量的更多信息,请参见如何指定回调属性值

ButtonDownFcn回调是执行一种功能,当用户点击UI组件上的鼠标按钮。回调执行在以下几种情况:

  • 用户右击表,然后启用属性设置为'上'

  • 用户右键单击或左键点击表,和启用属性设置为“关”“无效”

按键回调函数,指定为这些值之一:

  • 一个处理函数。

  • 的细胞阵列,其中所述第一元件是一个功能句柄。在单元阵列中随后的元件是要传递给回调函数的参数。

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

有关指定的回调特性值作为函数手柄,电池阵列,或字符向量的更多信息,请参见如何指定回调属性值

方法时执行此回调函数对象具有焦点和用户按下的键。如果没有这个属性来定义一个函数,MATLAB通过按键父的身影。重复按键保留的重点对象,该函数在每次按键时执行。如果用户大约同时按下多个键,MATLAB将检测最后一个按下的键。

如果将此属性指定为函数句柄(或包含函数句柄的单元数组),MATLAB将包含回调数据的对象作为回调函数的第二个参数传递。此对象包含下表中描述的属性。您可以使用点表示法在回调函数中访问这些属性。

财产

描述

例子:

一种

=

转移

按住Shift键一

字符 的字符显示为按下键或键的结果。字符可以是空的或不能打印。 “一个” “=” “” '一种'
修饰符 包含被按压(诸如一个的名称或多个修饰键的单元阵列,CtrlAlt转移)。 {1X0细胞} {1X0细胞} {'转移'} {'转移'}
关键 键被按下,通过在键或文本描述(小写)标签标识。 “一个” '等于' “转变” “一个”
资源 当用户按下键具有焦点的对象。 宾语 宾语 宾语 宾语
EventName 导致回调函数来执行的操作。 键盘按键的 键盘按键的 键盘按键的 键盘按键的

按下修改键会以以下方式影响回调数据:

  • 修改键可以影响字符财产,但不改变关键财产。

  • 某些键,以及修改过的键Ctrl,把不可打印字符字符财产。

  • CtrlAlt转移等几个键,不产生字符属性数据。

您也可以查询CurrentCharacter属性,以确定用户按下的是哪个字符。

键释放回调函数,指定为这些值之一:

  • 一个处理函数。

  • 的细胞阵列,其中所述第一元件是一个功能句柄。在单元阵列中随后的元件是要传递给回调函数的参数。

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

有关指定的回调特性值作为函数手柄,电池阵列,或字符向量的更多信息,请参见如何指定回调属性值

方法时执行此回调函数对象有焦点,用户释放一个键。

如果将此属性指定为函数句柄(或包含函数句柄的单元数组),MATLAB将包含回调数据的对象作为回调函数的第二个参数传递。此对象包含下表中描述的属性。您可以使用点表示法在回调函数中访问这些属性。

财产

描述

例子:

一种

=

转移

按住Shift键一

字符

字符解释的关键是释放。

“一个” “=” “” '一种'
修饰符

当前修改,如“控制”或空单元阵列如果没有改性剂。

{1X0细胞} {1X0细胞} {1X0细胞} {1X0细胞}
关键

已释放的密钥的名称,由密钥上的小写标签或文本描述标识。

“一个” '等于' “转变” “一个”
资源 当用户按下键具有焦点的对象。 宾语 宾语 宾语 宾语
EventName 导致回调函数来执行的操作。 “酶” “酶” “酶” “酶”

按下修改键会以以下方式影响回调数据:

  • 修改键可以影响字符财产,但不改变关键财产。

  • 某些键,以及修改过的键Ctrl,把不可打印字符字符财产。

  • CtrlAlt转移等几个键,不产生字符属性数据。

您也可以查询CurrentCharacter属性,以确定用户按下的是哪个字符。

组件创建函数,指定为以下值之一:

  • 一个处理函数。

  • 的细胞阵列,其中所述第一元件是一个功能句柄。在单元阵列中随后的元件是要传递给回调函数的参数。

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

有关指定的回调特性值作为函数手柄,电池阵列,或字符向量的更多信息,请参见如何指定回调属性值

该属性指定的回调函数时,MATLAB创建组件来执行。MATLAB执行前初始化所有组件属性值CreateFcn回调。如果不指定CreateFcn属性,然后MATLAB执行默认的创建函数。

使用gcbo在功能上你CreateFcn获取正在创建的组件对象的代码。

设置CreateFcn现有组件对象属性不起作用。

部件删除功能,指定为下列值之一:

  • 一个处理函数。

  • 的细胞阵列,其中所述第一元件是一个功能句柄。在单元阵列中随后的元件是要传递给回调函数的参数。

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

有关指定的回调特性值作为函数手柄,电池阵列,或字符向量的更多信息,请参见如何指定回调属性值

DeleteFcn属性指定的回调函数时MATLAB删除组件(例如,当用户关闭窗口)来执行。MATLAB执行DeleteFcn在销毁组件对象的属性之前进行回调。如果不指定DeleteFcn属性,然后MATLAB执行一个默认的删除函数。

使用gcbo在功能上你DeleteFcn获取被删除的组件对象的代码。

回调执行控制

全部展开

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

有两种回调状态来考虑:

  • 运行回调是当前正在执行的回调。

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

每当MATLAB调用回调时,该回调将尝试中断正在运行的回调(如果存在回调的话)。该可中断拥有正在运行的回调的对象的属性决定是否允许中断:

  • 的价值'上'允许其它回调中断对象的回调。中断发生在其中MATLAB处理队列,如当存在下一个点的DrawNow数字getframe等待,或暂停

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

    • 如果运行的回调不包含这些命令之一,然后MATLAB完成不间断地执行回调。

  • 的价值“关”阻止所有中断的尝试。该BusyAction拥有该中断回调对象的属性确定该中断回调被丢弃或放入队列中。

请注意

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

  • 如果中断回调是aDeleteFcnCloseRequestFcn,或SizeChangedFcn回调,则中断发生与可中断属性值。

  • 如果正在运行的回调当前正在执行等待时,则中断发生可中断属性值。

  • 计时器对象按照调度执行,而不考虑可中断属性值。

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

看到中断执行回调为一个例子,显示了如何将可中断BusyAction属性影响程序的行为。

指定为“队列”(默认)或“取消”。该BusyAction属性决定MATLAB如何处理中断回调的执行。有两种回调状态来考虑:

  • 运行回调是当前正在执行的回调。

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

BusyAction中断回调的源的属性确定MATLAB如何处理其执行。该BusyAction属性有以下值:

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

  • “取消”-不要执行中断的回调。

每当MATLAB调用回调时,该回调总是试图中断正在执行的回调。该可中断其回调是运行对象的属性决定,如果中断是允许的。如果可中断设定为:

  • -中断发生在MATLAB处理队列的下一个点。这是默认设置。

  • - - -BusyAction属性(拥有中断回调的对象的属性)确定MATLAB是否排队或忽略中断回调。

看到中断执行回调为一个例子,显示了如何将BusyAction可中断属性影响程序的行为。

此属性是只读的。

删除状态,返回“关”'上'。MATLAB设置BeingDeleted属性'上'DeleteFcn回调开始执行。该BeingDeleted属性保持设置为'上'直至该组件对象不再存在。

的值BeingDeleted属性,以验证该对象不是关于查询或修改之前被删除。

能力成为当前对象,指定为'上'“关”

  • '上'-将当前对象设置为当用户点击在正在运行的应用的组件。这俩CurrentObject财产的数字gco函数返回的作为当前对象。

  • “关”-将当前对象设置为谁的的HitTest'上'当用户点击在正在运行的应用的组件。

请注意

使用Enable属性来启用或禁用的组件。

父/子

全部展开

父对象,指定为数字面板ButtonGroup中,或标签宾语。使用此属性创建UI组件时指定的父容器或现有UI组件移动到不同的父容器。

孩子,返回一个空数组。对象有没有孩子。设置此属性没有效果。

对象句柄的能见度,指定为'上''打回来',或“关”

此属性控制在孩子其父列表中的对象句柄的知名度。当手柄不在孩子其父的列表中看到,它不是由通过搜索对象层次或查询处理性能得到手柄函数返回。这些功能包括:得到findobjgcagcfgconewplotCLACLF,。该HandleVisibility物业还控制对象的句柄的父人物的知名度CurrentObject财产。句柄仍在,即使他们是不可见的有效。如果您可以访问一个对象,你可以设置和获取其属性,并把它传递到对象上运行的任何功能。

HandleVisibility价值 描述
'上' 对象句柄始终可见。
'打回来' 对象句柄是可见从回调或通过回调调用的函数内,但不能从在命令行调用的函数内。此选项阻止访问在命令线的对象,但允许回调函数来访问它。
“关” 对象句柄在任何时候都是不可见的。此选项对于防止另一个函数对UI进行意外更改非常有用。设置HandleVisibility“关”在函数执行期间临时隐藏句柄。

设置图形根ShowHiddenHandles属性'上'使所有句柄可见,不管它们是什么HandleVisibility价值。这个设置对他们没有影响HandleVisibility值。

标识符

全部展开

此属性是只读的。

类型的图形对象,返回'uitable'

对象标识符,指定为字符向量或字符串标量。您可以指定唯一的标签值以作为一个对象的标识符。当你需要访问你的代码的对象的其他地方,你可以使用findobj功能搜索基础上的对象标签价值。

用户数据,指定为任何阵列。指定用户数据可以为应用程序内共享数据非常有用。看到在回调之间共享数据为更多的信息。

也可以看看

|

介绍了在R2008a