uidatepicker

Создайте компонент средства выбора даты

Синтаксис

d = uidatepicker
d = uidatepicker(Name,Value)
d = uidatepicker(parent)
d = uidatepicker(parent,Name,Value)

Описание

d = uidatepicker создает средство выбора даты в новой фигуре и возвращает объект DatePicker. MATLAB® вызывает функцию uifigure, чтобы создать фигуру.

d = uidatepicker(Name,Value) задает значения свойств DatePicker с помощью одного или нескольких аргументов пары Name,Value.

d = uidatepicker(parent) создает средство выбора даты в заданном родительском контейнере. Родительский элемент может быть созданным использованием Figure функции uifigure или одного из ее дочерних контейнеров.

пример

d = uidatepicker(parent,Name,Value) создает средство выбора даты в заданном контейнере и устанавливает одни или несколько значений свойств DatePicker.

Примеры

свернуть все

Создайте средство выбора даты в левом верхнем углу фигуры.

f = uifigure('Position',[500 500 320 280]);
d = uidatepicker(f,'Position',[18 235 150 22]);

Создайте средство выбора даты, которое отображает дату в текстовом поле с помощью формата dd-MM-yyyy. Водяной знак в запущенном приложении отображает новый формат, и все выбранные даты используют тот формат.

f = uifigure('Position',[500 500 320 280]);
d = uidatepicker(f,'Position',[18 235 150 22]);
d.DisplayFormat = 'dd-MM-yyyy';

Создайте средство выбора даты, которое отключает воскресенья и Новый год 2018.

f = uifigure('Position',[500 500 375 280]);
d = uidatepicker(f,'Position',[18 225 150 22]);
d.DisabledDaysOfWeek = 1;
d.DisabledDates = datetime(2018,1,1);

Когда вы расширяете средство выбора даты и обзор до января 2018, первый день года и всех воскресений отключен.

Создайте программный файл под названием mydateapp.m, который создает фигуру и средство выбора даты с коллбэком ValueChangedFcn.

function mydateapp
f = uifigure('Position',[340 400 415 300]);
d = uidatepicker(f,'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(f,msg,'Confirm Date');
        
        if (strcmp(selection,'Cancel'))
            % Revert to previous selection if cancelled
            d.Value = event.PreviousValue;
        end
    end
end

Функция datechange отображает поле диалогового окна подтверждения и определяет, которые снабжают кнопками пользовательские нажатия кнопки в том диалоговом окне. Средство выбора даты возвращается на предыдущую дату, если пользователь нажимает Cancel.

Запустите программу и кликните по дате, чтобы видеть поле диалогового окна подтверждения.

mydateapp

Входные параметры

свернуть все

Родительский контейнер, заданный как Figure, создал использование функции uifigure или одного из ее дочерних контейнеров: Tab, Panel, ButtonGroup или GridLayout. Если никакой контейнер не задан, MATLAB вызывает функцию uifigure, чтобы создать новый объект Figure, который служит родительским контейнером.

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: d = uidatepicker('Value',datetime('today')) создает средство выбора даты с сегодняшней датой, выбранной в пользовательском интерфейсе.

Примечание

Перечисленные здесь свойства являются только подмножеством. Для полного списка смотрите DatePicker Properties.

Выбранная дата, заданная как объект datetime в области значений свойства Limits. Чтобы сделать выбранную дату незаданной, установите это свойство на NaT.

Если заданный объект datetime содержит информацию времени, только информация о дате сохраняется в свойстве Value.

Пример: d = uidatepicker('Value',datetime('today'))

Типы данных: datetime

Формат отображения для текстового поля средства выбора даты, заданного как вектор символов или скаляр строки. Формат по умолчанию зависит от локали системы, запускающей приложение.

Формат, который вы задаете, должен использовать допустимые идентификаторы буквы, которые соответствуют Unicode® Locale Data Markup Language (LDML) стандарт в течение многих дат и времен. Чтобы разделить поля, можно включать символы небуквы, такие как дефис, пробел, двоеточие или любые символы non-ASCII.

Пример: d = uidatepicker('DisplayFormat','dd/MM/yy')

Примеры распространенных форматов

Эта таблица приводит общие форматы отображения. Примеры показывают отформатированный вывод для даты среда, 9 апреля 2014.

Значение 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

Все форматы даты и времени

Используйте эти идентификаторы буквы, чтобы создать формат отображения. Третий столбец этой таблицы показывает вывод для даты среда, 9 апреля 2014.

Обозначьте буквами идентификаторОписаниеОтображение
GЭраCE
yГод, без начальных нулей.2014
yyГод, с помощью последних двух цифр.14
yyy, yyyy...Год, с помощью, по крайней мере, столько же цифр сколько существует экземпляры 'y'В течение года 2014, 'yyy' отображает 2014, в то время как 'yyyyy' отображает 02014.
u, uu...Год ISO, один номер, определяющий год.2014
QЧетверть, с помощью одной цифры2
QQЧетверть, с помощью двух цифр02
QQQЧетверть, сокращеннаяQ2
QQQQЧетверть, полное имя2nd quarter
MМесяц, числовой, с помощью одной или двух цифр4
MMМесяц, числовой, с помощью двух цифр04
MMMМесяц, сокращенное имяApr
MMMMМесяц, полное имяApril
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 включает слова. Например, если формат месяца задан как 'MMMM', приложение принимает числовой месяц, такой как 04, но отобразит имя месяца, такое как 'April'.

  • Если пользователь задает номер дня года в запущенном приложении, и формат содержит идентификаторы и в течение дня года (D) и в течение Грегорианский год (y), то datetime не может считать номер дня года правильно. Используйте год ISO (u) вместо y.

  • Используйте один или несколько символов u вместо символов y, чтобы представлять год при работе с числами года около нуля.

Значение измененная функция, заданная как одно из следующего:

  • Указатель на функцию.

  • Массив ячеек, в котором первый элемент является указателем на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.

  • Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.

Коллбэк ValueChangedFcn выполняется, когда пользователь изменяет дату путем ввода в текстовом поле или путем расширения средства выбора даты и выбора даты.

Эта функция обратного вызова может получить доступ к определенной информации о взаимодействии пользователя со средством выбора даты. MATLAB передает эту информацию в объекте ValueChangedData в качестве второго аргумента к вашей функции обратного вызова. В App Designer аргумент называется событием. Можно получить свойства объектов с помощью записи через точку. Например, event.PreviousValue получает ранее выбранную дату. Объект ValueChangedData не доступен функциям обратного вызова, заданным как векторы символов.

В следующей таблице перечислены свойства объекта ValueChangedData.

СвойствоЗначение
ValueНовая выбранная дата
PreviousValueРанее выбранная дата
SourceКомпонент, который выполняет обратный вызов
EventName'ValueChanged'

Коллбэк ValueChangedFcn не выполняется, когда пользовательские повторные выборы или перепечатывают в настоящее время выбранную дату. Коллбэк также не выполняется, когда свойство Value изменяется программно.

Для получения дополнительной информации о создании коллбэков в App Designer, смотрите Коллбэки Записи в App Designer.

Местоположение и размер свернутого средства выбора даты относительно родительского контейнера, заданного как вектор формы [left bottom width height]. В этой таблице описываются каждый элемент в векторе.

ЭлементОписание
leftРасстояние от внутреннего левого края родительского контейнера к внешнему левому краю средства выбора даты
bottomРасстояние от внутреннего базового края родительского контейнера к внешнему базовому краю средства выбора даты
widthРасстояние между правыми и левыми внешними краями средства выбора даты
heightРасстояние между верхними и нижними внешними краями средства выбора даты

Все измерения указаны в пикселях.

Смотрите также

Функции

Свойства

Введенный в R2018a