主要内容

DatePicker属性

控制日期选择器的外观和行为

日期选择器允许用户从交互式日历中选择日期。这个uidatepicker函数创建日期选择器,并在显示日期选择器之前设置所需属性。通过更改日期选择器的属性值,可以修改其外观和行为的某些方面。使用点符号来引用特定的对象和属性:

无花果= uifigure;d = uidatepicker(图);d.DisplayFormat = ' M / d / yyyy ';

日期拾取器

全部展开

选定日期,指定为datetime对象的范围内的限制财产。若要使所选日期不指定,请将此属性设置为NaT

如果指定的datetime对象包含时间信息,只有日期信息保留在价值财产。

例子:d = uidatepicker(“价值”,datetime('今天'))

数据类型:datetime

占位符文本,指定为字符向量或字符串标量。占位符提供了一个简短的提示来描述预期的输入。文字只显示当价值财产是NaT

例子:“aaaa/mm/dd”

选择限制,指定为1 × 2datetime数组中。该数组中的第二个值必须晚于第一个值。默认值为[datetime(0000年1 1)datetime(9999、12、31)].此默认值从可能最早的日期开始,并在可能最晚的日期结束DatePicker金宝app支持。

在运行的应用程序中,日期选择器允许用户在此属性定义的封闭时间间隔上选择日期。如果在间隔内有禁用日期或禁用日期,那么这些日期和日期将被排除。

例子:d=uidatepicker(‘限制’,[datetime(‘今天’)datetime(2050,1,1)])

数据类型:datetime

显示日期选择器文本字段的格式,指定为字符向量或字符串标量。默认格式取决于运行应用程序的系统的语言环境。

指定的格式必须使用与Unicode对应的有效字母标识符®地区数据标记语言(LDML)用于日期和时间的标准。要分隔字段,可以包含非字母字符,如连字符、空格、冒号或任何非ascii字符。

例子:d=uidatepicker('DisplayFormat','dd/MM/yy')

常用格式示例

该表列出了常用的显示格式。示例显示日期(2014年4月9日,星期三)的格式化输出。

的价值格式 例子
“yyyy-MM-dd” 2014-04-09
‘dd/MM/yyyy’ 09/04/2014
“dd.MM.yyyy” 09.04.2014
“yyyy年MM月dd日” 2014年 04月 09日
“嗯,嗯,yyyy” 2014年4月9日

所有日期和时间格式

使用这些字母标识符创建显示格式。该表的第三列显示日期(2014年4月9日,星期三)的输出。

字母标识符 描述 显示
G 时代 CE
y 年份,没有前导零。 2014
yy 年份,用最后两位数。 14
yyyy... Year,使用的数字至少与实例的数字一样多“y” 2014年,“多”显示2014,而“yyyy”显示02014
uuu, ... ISO年份,一个数字表示年份。 2014
四分之一,使用一位数字 2
QQ 四分之一,用两位数字 02
回调 四分之一,缩写 第二季
QQQQ 季度,全名 第二季度
月,数字,用一或两位数字 4
毫米 月,数字,用两位数 04
月,缩写的名字 4月
月,全名 4月
月,首字母大写 一个
W 每个月的第几周,用一个数字 2
d 一个月的一天,用一或两位数 9
dd 每个月的一天,用两位数表示 09
D 一年中的一天,用一、二或三位数表示 99
DD 一年中的一天,用两位数表示 99
DDD 用三位数表示一年中的哪一天 099
e 星期几,用数字表示,用一或两位数表示 4在美国,周日是一周的第一天
ee 星期几,数字,用两位数表示 04
eee 日期,缩写名 结婚
eeee 日期,全名 周三
eeeee Day,首字母大写 W

请注意

  • 正在运行的应用程序中的编辑字段接受分隔的数值,即使DisplayFormat包括单词。例如,如果月格式指定为“嗯”,该应用程序接受一个数字月等04,但将显示月份名,例如“4”

  • 如果用户在运行的应用程序中指定了一年中的一天,并且格式包含了这一天的标识符(D)及公历年(y)那么datetime可能无法正确读取年月日编号。使用ISO年(u)代替y

  • 使用一个或多个u字符,而不是y使用接近零的年份数字时表示年份的字符。

禁用日期,指定为m-x-1datetime数组中。此属性指定在运行的应用程序中不可选择的日期。

例子:d = uidatepicker (DisabledDates, datetime(2018年,1,1))2018年1月1日禁用。

datetime数组不能包含任何NaT值和日期必须按升序排序。

要重新启用所有以前禁用的日期,请调用NaT (0)要创建空的datetime数组:

d.DisabledDates = NaT (0);

数据类型:datetime

一周的禁用天数,指定为以下日期之一:

  • 空数组[],它启用一周中的所有天。

  • 在[1,7]范围内的整数的向量。这些数字对应着一周的天数。例如,3 [1]禁用星期日和星期二。

  • 字符向量的一维单元格数组,数组元素包含本地化的日名。部分日期的名称必须明确。例如,{' F ', ' Sa '}禁用周五和周六。

  • 包含完整或部分本地化日名称的字符串向量。

当您使用单元格数组或字符串向量指定日期名称时,代码只能在您编写代码的地区中工作。要使代码在任何地区中工作,请将此属性指定为数字向量。

数据类型:双重的|细胞|字符串

字体和颜色

全部展开

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

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

例子:“Arial”

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

例子:14

字体大小,指定为以下值之一:

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

  • “大胆”-字符轮廓比“正常”

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

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

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

RGB三联体和十六进制颜色代码在指定自定义颜色时很有用。

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

  • 十六进制颜色代码是以哈希符号开头的字符向量或字符串标量()后跟三个或六个十六进制数字,其范围为0F. 这个values are not case sensitive. Thus, the color codes“# FF8800”“# ff8800”“# F80”,“# f80”是等价的。

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

颜色名称 简称 RGB值 十六进制颜色代码 外观
“红色” “r” (1 0 0) “# FF0000”

红色样品

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

绿色样品

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

样品的颜色是蓝色的

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

样品的颜色为青色

“洋红” “我是 (1 0 1) “#FF00FF”

样品的颜色为洋红色

“黄色” “y” (1 1 0) “# FFFF00”

样品的颜色为黄色

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

样品的颜色为黑色

“白色” ' w ' (1 1 1) “# FFFFFF”

样品的颜色为白色

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

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

RGB三重态样本[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) "77AC30"

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

[0.3010 0.7450 0.9330] “#4DBEEE”

RGB三联体样品[0.3010.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. 这个values are not case sensitive. Thus, the color codes“# FF8800”“# ff8800”“# F80”,“# f80”是等价的。

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

颜色名称 简称 RGB值 十六进制颜色代码 外观
“红色” “r” (1 0 0) “# FF0000”

红色样品

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

绿色样品

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

样品的颜色是蓝色的

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

样品的颜色为青色

“洋红” “我是 (1 0 1) “#FF00FF”

样品的颜色为洋红色

“黄色” “y” (1 1 0) “# FFFF00”

样品的颜色为黄色

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

样品的颜色为黑色

“白色” ' w ' (1 1 1) “# FFFFFF”

样品的颜色为白色

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

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

RGB三重态样本[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) "77AC30"

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

[0.3010 0.7450 0.9330] “#4DBEEE”

RGB三联体样品[0.3010.7450 0.9330],显示为浅蓝色

(0.6350 0.0780 0.1840) “# A2142F”

RGB三联体样品[0.6350 0.0780 0.1840],显示为深红色

交互性

全部展开

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

  • “上”—显示对象。

  • “关”-隐藏对象而不删除它。您仍然可以访问不可见的UI组件的属性。

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

允许编辑字段更改,指定为“上”“关”,或作为数字或逻辑1真正的)或0).的值“上”相当于真正的,“关”相当于.因此,可以将此属性的值用作逻辑值。该值存储为开启/关闭类型的逻辑值matlab.lang.OnOffSwitchState

将此属性设置为“上”允许用户在运行时更改编辑字段中的日期。的启用属性也必须设置为“上”允许在编辑字段中进行更改。

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

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

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

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

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

位置

全部展开

折叠日期选择器相对于父容器的位置和大小,指定为窗体的向量[左下宽高].该表描述了向量中的每个元素。

元素 描述
从父容器的左内边缘到日期选择器的左外边缘的距离
底部 从父容器的内底边到日期选择器的外底边的距离
宽度 日期选择器左右外缘之间的距离
高度 日期选择器上外缘和下外缘之间的距离

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

折叠日期选择器相对于父容器的位置和大小,指定为窗体的向量[左下宽高].该属性值与位置财产。

折叠日期选择器相对于父容器的位置和大小,指定为窗体的向量[左下宽高].该属性值与位置财产。

布局选项,指定为GridLayoutOptions对象。此属性为网格布局容器的子组件指定选项。如果组件不是网格布局容器的子组件(例如,它是图形或面板的子组件),则此属性为空,不起作用。但是,如果组件是网格布局容器的子组件,则可以通过设置属性GridLayoutOptions对象。

例如,此代码将日期选择器放置在其父网格的第三行和第二列中。

G = uigridlayout([4 3]);d = uidatepicker (g);d.Layout.Row = 3;d.Layout.Column = 2;

要使日期选择器跨多行或多列,请指定属性作为两元素向量。例如,此日期选择器跨越列2通过3.

d.Layout.Column = [2 3];

回调

全部展开

值改变函数,指定为下列函数之一:

  • 一个处理函数。

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

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

ValueChangedFcn当用户通过在文本字段中输入或展开日期选择器并选择日期来更改日期时,将执行回调。

这个回调函数可以访问关于用户与日期选择器交互的特定信息。MATLAB将这个信息传递到ValueChangedData对象作为回调函数的第二个参数。在App Designer中,参数被调用事件.你可以使用点符号来获得对象属性。例如,event.PreviousValue获取先前选定的日期。的ValueChangedData对象不可用于指定为字符向量的回调函数。

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

财产 价值
价值 新选择的日期
先前值 以前选定的日期
来源 执行回调的组件
EventName “ValueChanged”

ValueChangedFcn当用户重新选择或重新键入当前选择的日期时,不会执行回调。当价值属性以编程方式更改。

有关在应用程序设计器中创建回调的更多信息,请参见在应用程序设计器中编写回调

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

  • 函数处理。

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

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

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

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

设置创建FCN属性对现有组件没有影响。

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

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

  • 函数处理。

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

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

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

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

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

回调执行控制

全部展开

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

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

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

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

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

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

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

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

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

请注意

在这些情况下,回调中断和执行的行为是不同的:

  • 如果中断回调为删除FCNCloseRequestFcn,或SizeChangedFcn回调,则中断发生不管可中断属性值。

  • 如果正在运行的回调当前正在执行等待函数,则不管可中断属性值。

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

请注意

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

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

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

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

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

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

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

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

此属性是只读的。

删除状态,返回类型为开/关逻辑值matlab.lang.OnOffSwitchState

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

检查该值BeingDeleted属性来验证对象在查询或修改之前不会被删除。

父/子

全部展开

父容器,指定为数字使用uifigure函数或其子容器之一:标签面板按钮组,或GridLayout.如果没有指定容器,则MATLAB调用uifigure函数创建一个新的数字作为父容器的对象。

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

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

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

标识符

全部展开

此属性是只读的。

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

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

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

如果你在应用程序设计器中工作,在应用程序中创建公共或私有属性来共享数据,而不是使用用户数据属性。有关详细信息,请参阅在应用程序设计器应用程序中共享数据

介绍了R2018a