主要内容

下拉的属性

控制下拉列表外观和行为

下拉列表是允许用户选择一个选项或在文本中输入的UI组件。属性控制下拉列表的外观和行为。使用点表示法来引用特定的对象和属性。

FIG = ufigure;Dd = uidropdown(fig);dd.Items ={'红色','绿色','蓝色'};

下拉

全部展开

属性的元素指定为项目ItemsData数组。默认情况下,价值第一个元素在吗项目

指定价值作为项目选择与该元素匹配的下拉项。如果ItemsData不是空的,那么价值必须设置为的元素ItemsData,下拉菜单将在列表中选择相关项。

可编辑的设置为“上”,您可以另外指定价值作为字符向量或字符串标量。

占位符文本,指定为字符向量或字符串标量。占位符提供了下拉项的简短描述。占位符文本仅在显示下拉菜单时出现.有两种情况会发生这种情况:

  • 价值属性设置为

  • 价值属性设置为的元素ItemsData其对应项为

例如,在一个下拉列表中显示一个占位符ItemsData,添加项目并设置价值财产

图= ufigure图(“位置”,[100 100 300 200]);Dd = uidropdown(fig,“项目”, {“一个”“两个”},...“价值”...“占位符”“选项”);

下拉项,指定为字符向量、字符串数组或1-D分类数组的单元格数组。允许重复元素。控件中的元素有多少,下拉组件就显示多少个选项项目数组中。如果将此属性指定为分类数组,MATLAB®使用数组中的值,而不是全部类别集。

例子:{“红”、“黄”、“蓝”}

例子:{' 1 ', ' 2 ', ' 3 '}

的每个元素相关联的数据项目属性值,指定为1 × n数值数组或1 × n单元格数组。允许重复元素。

例如,如果你设置项目值设置为员工名称时,可以将ItemsData值对应的员工ID号。的ItemsData值对应用程序用户不可见。

数组元素的个数ItemsData价值和项目值不匹配,则发生下列情况之一:

  • ItemsData值为空时,则所有的元素项目值呈现给应用程序用户。

  • ItemsData值的元素比项目值,然后所有的元素项目值呈现给应用程序用户。MATLAB忽略了额外的ItemsData元素。

  • ItemsData值不是空的,而是包含的元素比项目价值,是唯一的要素项目对象中有相应元素的值ItemsData价值。

例子:{“一”、“两个”,“三”}

例子:[10 20 30 40]

字体和颜色

全部展开

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

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

例子:“天线”

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

例子:14

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

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

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

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

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

字体颜色,指定为RGB三元组、十六进制颜色代码或表中列出的选项之一。

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”

RGB三联体[0 0.4470 0.7410]样品,呈深蓝色

[0.8500 0.3250 0.0980] “# D95319”

RGB三联体样品[0.8500 0.3250 0.0980],呈暗橙色

[0.9290 0.6940 0.1250] “# EDB120”

RGB三联体样品[0.9290 0.6940 0.1250],呈暗黄色

[0.4940 0.1840 0.5560] “# 7 e2f8e”

RGB三联体样品[0.4940 0.1840 0.5560],呈深紫色

[0.4660 0.6740 0.1880] “# 77 ac30”

RGB三联体[0.4660 0.6740 0.1880]样本,呈现中绿色

[0.3010 0.7450 0.9330] “# 4 dbeee”

RGB三联体样品[0.3010 0.7450 0.9330],呈浅蓝色

[0.6350 0.0780 0.1840] “# A2142F”

RGB三联体样品[0.6350 0.0780 0.1840],呈暗红色

背景色,指定为RGB三元组、十六进制颜色代码或表中列出的颜色选项之一。

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”

RGB三联体[0 0.4470 0.7410]样品,呈深蓝色

[0.8500 0.3250 0.0980] “# D95319”

RGB三联体样品[0.8500 0.3250 0.0980],呈暗橙色

[0.9290 0.6940 0.1250] “# EDB120”

RGB三联体样品[0.9290 0.6940 0.1250],呈暗黄色

[0.4940 0.1840 0.5560] “# 7 e2f8e”

RGB三联体样品[0.4940 0.1840 0.5560],呈深紫色

[0.4660 0.6740 0.1880] “# 77 ac30”

RGB三联体[0.4660 0.6740 0.1880]样本,呈现中绿色

[0.3010 0.7450 0.9330] “# 4 dbeee”

RGB三联体样品[0.3010 0.7450 0.9330],呈浅蓝色

[0.6350 0.0780 0.1840] “# A2142F”

RGB三联体样品[0.6350 0.0780 0.1840],呈暗红色

交互性

全部展开

可见状态,指定为“上”“关闭”,或作为数字或逻辑1真正的)或0).值为“上”等于真正的,“关闭”等于.因此,您可以将此属性的值用作逻辑值。该值存储为类型的on/off逻辑值matlab.lang.OnOffSwitchState

  • “上”—显示对象。

  • “关闭”—隐藏对象,但不删除对象。您仍然可以访问不可见UI组件的属性。

要使应用程序启动更快,请设置可见财产“关闭”用于所有不需要在启动时出现的UI组件。

下拉组件的可编辑状态,指定为“关闭”“上”,或作为数字或逻辑1真正的)或0).值为“上”等于真正的,“关闭”等于.因此,您可以将此属性的值用作逻辑值。该值存储为类型的on/off逻辑值matlab.lang.OnOffSwitchState

如果启用属性值为“关闭”,则应用程序用户不能更改下拉组件文本,即使Editable属性值为“上”

操作状态,指定为“上”“关闭”,或作为数字或逻辑1真正的)或0).值为“上”等于真正的,“关闭”等于.因此,您可以将此属性的值用作逻辑值。该值存储为类型的on/off逻辑值matlab.lang.OnOffSwitchState

  • 如果将此属性设置为“上”,应用程序用户可以与组件交互。

  • 如果将此属性设置为“关闭”,该组件显示为暗,表明应用程序用户无法与它交互,并且它不会触发回调。

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

上下文菜单,指定为快捷菜单对象创建。uicontextmenu函数。使用此属性可在右键单击组件时显示上下文菜单。

位置

全部展开

下拉组件相对于父组件的位置和大小,指定为vector[左下宽高].该表描述了向量中的每个元素。

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

所有的测量都以像素为单位。

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

例子:[100 100 100 22]

下拉组件的内部位置和大小,指定为[左下宽高].位置值相对于父容器。所有的测量都以像素为单位。此属性值与位置对于下拉组件。

此属性是只读的。

下拉组件的外部位置和大小返回为[左下宽高].位置值相对于父容器。所有的测量都以像素为单位。此属性值与位置对于下拉组件。

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

例如,这段代码在其父网格的第三行和第二列中放置了一个下拉列表。

G = uigridlayout([4 3]);Dd = uidropdown(g);dd.Layout.Row = 3;dd.Layout.Column = 2;

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

dd.Layout.Column = [2 3];

回调

全部展开

值更改回调,指定为以下值之一:

  • 一个函数句柄。

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

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

当用户从下拉列表中选择不同的选项时,执行此回调函数。方法,则不执行价值属性以编程方式更改。

这个回调函数可以访问关于用户与下拉菜单交互的特定信息。MATLAB将此信息传递到ValueChangedData对象作为回调函数的第二个参数。在App Designer中,这个参数被调用事件.可以使用点表示法查询对象属性。例如,事件。PreviousValue返回下拉列表的上一个值。的ValueChangedData对象对于指定为字符向量的回调函数不可用。

属性的属性如下表所示ValueChangedData对象。

财产 价值
价值 下拉组件值后的应用程序用户最近的互动。
PreviousValue 下拉组件的值之前的应用程序用户最近的互动。
编辑

逻辑值,该值指示回调是否是由于在下拉组件中键入新值而执行的。

  • 0对象的元素选择或键入项目属性的下拉组件。

  • 1真正的对象的元素,该应用程序用户输入的值不是项目属性的下拉组件。

组件执行回调。
EventName “ValueChanged”

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

下拉菜单打开回调函数,指定为以下值之一:

  • 一个函数句柄。

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

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

此属性指定当用户单击打开下拉菜单时执行的回调函数。此回调的一个可能用途是动态更新下拉菜单中的条目列表。

这个回调函数可以访问关于用户与下拉菜单交互的特定信息。MATLAB将此信息传递到DropDownOpeningData对象作为回调函数的第二个参数。在App Designer中,这个参数被调用事件.可以使用点表示法查询对象属性。例如,事件。源返回下拉用户与之交互以触发回调的对象。的DropDownOpeningData对象对于指定为字符向量的回调函数不可用。

属性的属性如下表所示DropDownOpeningData对象。

财产 价值
组件执行回调
EventName “DropDownOpening”

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

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

  • 函数处理。

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

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

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

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

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

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

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

  • 函数处理。

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

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

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

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

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

回调执行控制

全部展开

回调中断,指定为“上”“关闭”,或作为数字或逻辑1真正的)或0).值为“上”等于真正的,“关闭”等于.因此,您可以将此属性的值用作逻辑值。该值存储为类型的on/off逻辑值matlab.lang.OnOffSwitchState

此属性决定是否可以中断正在运行的回调。有两种回调状态需要考虑:

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

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

MATLAB在执行处理回调队列的命令时确定回调中断行为。这些命令包括drawnow数字uifiguregetframe等待,暂停

如果正在运行的回调不包含这些命令之一,则不会发生中断。MATLAB首先完成运行回调的执行,然后再执行中断回调。

如果正在运行的回调包含这些命令之一,则可中断属性决定是否发生中断:

  • 如果的值可中断“关闭”,则不发生中断。相反,BusyAction属性确定中断回调是被丢弃还是添加到回调队列。

  • 如果的值可中断“上”,则中断。下一次MATLAB处理回调队列时,它将停止正在运行的回调的执行,并执行中断的回调。中断回调完成后,MATLAB继续执行正在运行的回调。

请注意

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

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

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

  • 如果中断回调属于计时器对象,则回调函数将根据调度执行,而不管可中断属性值。

请注意

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

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

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

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

BusyAction属性仅在满足以下两个条件时确定回调排队行为:

在这些条件下,BusyAction拥有中断回调的对象的属性决定了MATLAB如何处理中断回调。的可能值BusyAction属性:

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

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

此属性是只读的。

删除状态,作为类型的on/off逻辑值返回matlab.lang.OnOffSwitchState

MATLAB设置BeingDeleted财产“上”DeleteFcn回调开始执行。的BeingDeleted属性仍然设置为“上”直到组件对象不再存在。

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

父/子

全部展开

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

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

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

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

标识符

全部展开

此属性是只读的。

图形对象的类型,返回为“uidropdown”

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

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

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

另请参阅

功能

在R2016a中引入