uidatepicker
创建日期选择器组件
语法
说明
在新图窗中创建一个日期选择器,并返回 d
= uidatepickerDatePicker
对象。MATLAB® 调用 uifigure
函数来创建该图窗。
使用一个或多个 d
= uidatepicker(Name,Value
)Name,Value
对组参量指定 DatePicker
属性值。
在指定的父容器中创建日期选择器。父容器可以是 d
= uidatepicker(parent
)Figure
对象或其子容器之一。
在指定的容器中创建日期选择器,并设置一个或多个 d
= uidatepicker(parent
,Name,Value
)DatePicker
属性值。
示例
在 UI 图窗的左上角创建一个日期选择器。
fig = uifigure('Position',[500 500 320 280]); d = uidatepicker(fig,'Position',[18 235 150 22]);
创建一个用 dd-MM-yyyy
格式在文本字段中显示日期的日期选择器。正在运行的 App 中将显示新的格式,且所有选定的日期都将使用该格式。
fig = uifigure('Position',[500 500 320 280]); d = uidatepicker(fig,'Position',[18 235 150 22]); d.DisplayFormat = 'dd-MM-yyyy';
创建一个禁用星期日和 2018 年元旦的日期选择器。
fig = uifigure('Position',[500 500 375 280]); d = uidatepicker(fig,'Position',[18 225 150 22]); d.DisabledDaysOfWeek = 1; d.DisabledDates = datetime(2018,1,1);
当您展开日期选择器并浏览到 2018 年 1 月时,这一年的第一天和所有星期日都被禁用。
创建一个通过 ValueChangedFcn
回调来创建图窗和日期选择器的程序文件,将其命名为 mydateapp.m
。
function mydateapp fig = uifigure('Position',[340 400 415 300]); d = uidatepicker(fig,'DisplayFormat','MM-dd-yyyy',... 'Position',[130 190 150 22],... 'Value',datetime(2014,4,9),... 'ValueChangedFcn', @datechange); function datechange (src,event) lastdate = char(event.PreviousValue); newdate = char(event.Value); msg = ['Change date from ' lastdate ' to ' newdate '?']; % Confirm new date selection = uiconfirm(fig,msg,'Confirm Date'); if (strcmp(selection,'Cancel')) % Revert to previous selection if cancelled d.Value = event.PreviousValue; end end end
datechange
将函数显示确认对话框,并确定用户在该对话框中点击的按钮。如果用户点击取消,日期选择器将回到上一个日期。
运行该程序,然后点击某个日期以查看确认对话框。
mydateapp
输入参数
父容器,指定为 Figure
对象或其子容器之一:Tab
、Panel
、ButtonGroup
或 GridLayout
。如果不指定父容器,MATLAB 会调用 uifigure
函数创建新 Figure
对象充当父容器。
名称-值参数
以 Name1=Value1,...,NameN=ValueN
的形式指定可选参量对组,其中 Name
是参量名称,Value
是对应的值。名称-值参量必须出现在其他参量之后,但对各个参量对组的顺序没有要求。
在 R2021a 之前,使用逗号分隔每个名称和值,并用引号将 Name
引起来。
示例: d = uidatepicker('Value',datetime('today'))
会创建一个日期选择器并在用户界面上选中当天的日期。
注意
此处所列的属性只是一部分。有关完整列表,请参阅 DatePicker
。
日期选择器文本字段的显示格式,指定为字符向量或字符串标量。默认格式取决于运行 App 的系统的区域设置。
您指定的格式必须使用有效的字母标识符,这些标识符要符合关于日期时间的 Unicode® 区域设置数据标记语言 (LDML) 标准。要分隔字段,可以包括非字母字符,例如连字符、空格、冒号或任何非 ASCII 字符。
示例: d = uidatepicker('DisplayFormat','dd/MM/yy')
常用格式示例
下表列出了常用的显示格式。以下示例说明 2014 年 4 月 9 日星期三的格式化输出。
Format 的值 | 示例 |
---|---|
'yyyy-MM-dd' | 2014-04-09 |
'dd/MM/yyyy' | 09/04/2014 |
'dd.MM.yyyy' | 09.04.2014 |
'yyyy年 MM月 dd日' | 2014年 04月 09日 |
'MMMM d, yyyy' | April 9, 2014 |
所有日期时间格式
使用这些字母标识符创建显示格式。下表第三列显示 2014 年 4 月 9 日星期三的输出。
字母标识符 | 描述 | 显示 |
---|---|---|
G | 年代 | CE |
y | 年份,没有前导零。 | 2014 |
yy | 年份,使用最后两位数。 | 14 |
yyy , yyyy ... | 年份,至少使用与 'y' 实例相同的位数 | 对于年份 2014,'yyy' 显示 2014 ,而 'yyyyy' 则显示 02014 。 |
u , uu , ... | ISO 年份,指示年份的单个数字。 | 2014 |
Q | 季度,使用一位数 | 2 |
QQ | 季度,使用两位数 | 02 |
QQQ | 季度,缩写 | 2 季度 |
QQQQ | 季度,全名 | 第二季度 |
M | 月份,使用一位或两位数字的数值 | 4 |
MM | 月份,使用两位数字的数值 | 04 |
MMM | 月份,缩写名称 | 四月 |
MMMM | 月份,全名 | 四月 |
MMMMM | 月份,首字母大写 | A |
W | 一月中的第几周,使用一位数 | 2 |
d | 一月中的第几天,使用一位或两位数 | 9 |
dd | 一月中的第几天,使用两位数字 | 09 |
D | 一年中的第几天,使用一位、两位或三位数 | 99 |
DD | 一年中的第几天,使用两位数字 | 99 |
DDD | 一年中的第几天,使用三位数 | 099 |
e | 一周中的第几天,使用一位或两位数字的数值 | 4 ,星期日是一周中的第一天 |
ee | 一周中的第几天,使用两位数字的数值 | 04 |
eee | 星期几,缩写名称 | Wed |
eeee | 星期几,全名 | Wednesday |
eeeee | 星期几,使用一位大写数字 | W |
注意
即使
DisplayFormat
包含单词,正在运行的 App 中的编辑字段也接受分隔数值。例如,如果月份格式指定为'MMMM'
,App 也会接受数值形式的月份(如04
),但会将其显示为月份名称(如'April'
)。如果用户在正在运行的 App 中指定日期数字,而格式中同时包含日期 (
D
) 和公历年 (y
) 的标识符,则datetime
可能无法正确读取日期数字。请使用 ISO 年份 (u
) 来代替y
。使用一个或多个
u
字符而非y
字符在使用接近零的年份数时解释年份。
值更改函数,指定为下列值之一:
函数句柄。
第一个元素是函数句柄的元胞数组。元胞数组中的后续元素是传递到回调函数的参量。
包含有效 MATLAB 表达式的字符向量(不推荐)。MATLAB 在基础工作区计算此表达式。
当用户通过在文本字段中键入日期或者展开日期选择器并选择日期的方式更改日期时,将执行 ValueChangedFcn
回调。
此回调函数可以访问有关用户与日期选择器交互的特定信息。MATLAB 将 ValueChangedData
对象中的此信息作为第二个参量传递给回调函数。在 App 设计工具中,该参量名为 event
。您可以使用圆点表示法获取对象属性。例如,event.PreviousValue
获取之前选择的日期。ValueChangedData
对象不可用于指定为字符向量的回调函数。
下表列出了 ValueChangedData
对象的属性。
属性 | 值 |
---|---|
Value | 新选定的日期 |
PreviousValue | 之前选定的日期 |
Source | 执行回调的组件 |
EventName | 'ValueChanged' |
当用户重新选择或重新键入当前选定的日期时,不会执行 ValueChangedFcn
回调。当以编程方式更改 Value
属性时,也不会执行该回调。
有关在 App 设计工具中创建回调的详细信息,请参阅App 设计工具中的回调。
折叠后的日期选择器相对于父容器的位置和大小,指定为 [left bottom width height]
形式的向量。此表介绍该向量中的每个元素。
元素 | 描述 |
---|---|
left | 从父容器内部左边缘到日期选择器外部左边缘之间的距离 |
bottom | 从父容器内部下边缘到日期选择器外部下边缘之间的距离 |
width | 日期选择器左右外边缘之间的距离 |
height | 日期选择器上下外边缘之间的距离 |
所有测量值都以像素为单位。
版本历史记录
在 R2018a 中推出使用 Placeholder
属性提供一个简短的提示,描述预期的日期选择器输入。
有关详细信息,请参阅 DatePicker
。
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)