uidatepicker

Создайте компонент date picker

Описание

d = uidatepicker создает средство выбора даты на новом рисунке и возвращает DatePicker объект. MATLAB® вызывает uifigure функция для создания рисунка.

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

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

пример

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

Примеры

свернуть все

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

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

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

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 года, первый день года и все воскресные дни отключены.

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

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(f,msg,'Confirm Date');
        
        if (strcmp(selection,'Cancel'))
            % Revert to previous selection if cancelled
            d.Value = event.PreviousValue;
        end
    end
end

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

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

mydateapp

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

свернуть все

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

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

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

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

Примечание

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

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

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

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

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

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

В указанном формате должны использоваться допустимые идентификаторы букв, которые соответствуют Юникоду® Язык разметки данных локали (LDML) стандарт для дат и времени. Для разделения полей можно включать небукву символы, такие как дефис, пространство, двоеточие или любые символы, отличные от 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

Примечание

  • Поле edit в запущенном приложении принимает разграниченные числовые значения, даже когда DisplayFormat включает слова. Например, если формат месяца задан как 'MMMM', приложение принимает численный месяц, такой как 04, но отобразит имя месяца, например 'April'.

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

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

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

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

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

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

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

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

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

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

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

Дополнительные сведения о создании коллбэков в App Designer см. в разделе Запись коллбэков в App Designer.

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

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

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

См. также

Функции

Свойства

Введенный в R2018a