DatePicker Properties

Управляйте внешним видом и поведением средства выбора даты

Средства выбора даты позволяют пользователям выбирать даты из интерактивного календаря. uidatepicker функция создает средство выбора даты и устанавливает любые необходимые свойства прежде, чем отобразить его. Путем изменения значений свойств средства выбора даты можно изменить определенные аспекты его внешнего вида и поведения. Используйте запись через точку, чтобы относиться к конкретному объекту и свойству:

uf = uifigure;
d = uidatepicker(uf);
d.DisplayFormat = 'M/d/yyyy';

Средство выбора даты

развернуть все

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

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

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

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

Пределы выбора, заданные как 1 2 datetime массив. Второе значение в этом массиве должно быть позже, чем первое значение. Значением по умолчанию является [datetime(0000,1,1) datetime(9999,12,31)]. Это значение по умолчанию запускается в самом скором времени и заканчивается в последнюю дату что DatePicker поддержки.

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

Пример: d = uidatepicker('Limits',[datetime('today') datetime(2050,1,1)])

Типы данных: 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 символы, чтобы представлять год при работе с числами года около нуля.

Отключенные даты, заданные как m-1 datetime массив. Это свойство задает даты, которые не доступны для выбора в запущенном приложении.

Пример: d = uidatepicker('DisabledDates',datetime(2018,1,1)) отключает 1 января 2018.

datetime массив не может не содержать NaT значения и даты должны быть отсортированы в порядке возрастания.

Чтобы повторно включить все ранее отключенные даты, вызовите NaT(0) создать пустой datetime массив:

d.DisabledDates = NaT(0);

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

Отключенные дни недели, заданной как одно из следующего:

  • Пустой массив [], который включает все дни недели.

  • Вектор целых чисел в области значений [1, 7]. Числа соответствуют дням недели. Например, [1 3] отключает воскресенья и вторники.

  • 1D массив ячеек из символьных векторов, где элементы массива содержат локализованные дневные имена. Частичные дневные имена должны быть однозначными. Например, {'F','Sa'} отключает пятницы и субботы.

  • Представьте в виде строки вектор, содержащий полные или частичные локализованные дневные имена.

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

Типы данных: double | cell | string

Шрифт и цвет

развернуть все

Название шрифта, заданное как система, поддержало название шрифта. Шрифт по умолчанию зависит от конкретной операционной системы и локали.

Если заданный шрифт не доступен, то MATLAB® использует лучшее соответствие среди шрифтов, доступных в системе, куда приложение запускается.

Пример: 'Arial'

Размер шрифта, заданный в виде положительного числа. Единицами измерения являются пиксели. Размер шрифта по умолчанию зависит от конкретной операционной системы и локали.

Пример: 14

Толщина шрифта, заданная как одно из этих значений:

  • 'normal' — Вес по умолчанию, как задано конкретным шрифтом

  • 'bold' — Более толстые символьные основы, чем 'normal'

Не все шрифты имеют полужирное начертание шрифта. Поэтому установка жирного шрифта привести к установке обычного шрифта.

Угол шрифта, заданный как 'normal' или 'italic'. Установка этого свойства к italic выбирает наклонную версию шрифта, если это доступно в системе пользователя приложения.

Цвет шрифта, заданный как триплет RGB, шестнадцатеричный цветовой код или одна из перечисленных в таблице опций.

Триплеты RGB и шестнадцатеричные цветовые коды полезны для определения пользовательских цветов.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7].

  • Шестнадцатеричный цветовой код является вектором символов или скаляром строки, который запускается с символа хеша (#) сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут лежать в диапазоне от 0 к F. Значения не являются чувствительными к регистру. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' эквивалентны.

Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Название цветаКраткое названиеТриплет RGBШестнадцатеричный цветовой кодВнешний вид
'red''r'[1 0 0]'#FF0000'

'green''g'[0 1 0]'#00FF00'

'blue''b'[0 0 1]'#0000FF'

'cyan' 'c'[0 1 1]'#00FFFF'

'magenta''m'[1 0 1]'#FF00FF'

'yellow''y'[1 1 0]'#FFFF00'

'black''k'[0 0 0]'#000000'

'white''w'[1 1 1]'#FFFFFF'

Вот являются триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию использованием MATLAB во многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешний вид
[0 0.4470 0.7410]'#0072BD'

[0.8500 0.3250 0.0980]'#D95319'

[0.9290 0.6940 0.1250]'#EDB120'

[0.4940 0.1840 0.5560]'#7E2F8E'

[0.4660 0.6740 0.1880]'#77AC30'

[0.3010 0.7450 0.9330]'#4DBEEE'

[0.6350 0.0780 0.1840]'#A2142F'

Цвет фона, заданный как триплет RGB, шестнадцатеричный цветовой код или один из перечисленных в таблице параметров цвета.

Триплеты RGB и шестнадцатеричные цветовые коды полезны для определения пользовательских цветов.

  • Триплет RGB представляет собой трехэлементный вектор-строку, элементы которого определяют интенсивность красных, зеленых и синих компонентов цвета. Интенсивность должна быть в области значений [0,1]; например, [0.4 0.6 0.7].

  • Шестнадцатеричный цветовой код является вектором символов или скаляром строки, который запускается с символа хеша (#) сопровождаемый тремя или шестью шестнадцатеричными цифрами, которые могут лежать в диапазоне от 0 к F. Значения не являются чувствительными к регистру. Таким образом, цветовые коды '#FF8800', '#ff8800', '#F80', и '#f80' эквивалентны.

Кроме того, вы можете задать имена некоторых простых цветов. Эта таблица приводит опции именованного цвета, эквивалентные триплеты RGB и шестнадцатеричные цветовые коды.

Название цветаКраткое названиеТриплет RGBШестнадцатеричный цветовой кодВнешний вид
'red''r'[1 0 0]'#FF0000'

'green''g'[0 1 0]'#00FF00'

'blue''b'[0 0 1]'#0000FF'

'cyan' 'c'[0 1 1]'#00FFFF'

'magenta''m'[1 0 1]'#FF00FF'

'yellow''y'[1 1 0]'#FFFF00'

'black''k'[0 0 0]'#000000'

'white''w'[1 1 1]'#FFFFFF'

Вот являются триплеты RGB и шестнадцатеричные цветовые коды для цветов по умолчанию использованием MATLAB во многих типах графиков.

Триплет RGBШестнадцатеричный цветовой кодВнешний вид
[0 0.4470 0.7410]'#0072BD'

[0.8500 0.3250 0.0980]'#D95319'

[0.9290 0.6940 0.1250]'#EDB120'

[0.4940 0.1840 0.5560]'#7E2F8E'

[0.4660 0.6740 0.1880]'#77AC30'

[0.3010 0.7450 0.9330]'#4DBEEE'

[0.6350 0.0780 0.1840]'#A2142F'

Интерактивность

развернуть все

Видимость компонента, заданная как 'on' или 'off'. Когда Visible свойство установлено в 'off', компонент не отображается в пользовательском интерфейсе, но можно запросить и установить его свойства.

Позвольте изменения поля редактирования, заданные как 'on' или 'off'. Установите это свойство на 'on' позволить пользователю изменять дату в поле редактирования во время выполнения. Enable свойство должно также быть установлено в 'on' позволить изменения в поле редактирования.

Включите взаимодействия, заданные как 'on' или 'off'. Установите это свойство на 'off' заставить компонент казаться тусклым, указывая, что пользователь не может взаимодействовать с ним.

Подсказка, заданная как вектор символов, массив ячеек из символьных векторов, массив строк или 1D категориальный массив. Используйте это свойство отобразить сообщение, когда пользователь наведет указатель на компонент во время выполнения. Подсказка отображается, даже когда компонент отключен. Чтобы отобразить несколько линий текста, задайте массив ячеек из символьных векторов или массив строк. Каждый элемент в массиве становится отдельной линией текста. Если вы задаете это свойство как категориальный массив, MATLAB использует значения в массиве, не полный набор категорий.

Положение

развернуть все

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

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

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

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

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

Параметры макета, заданные как GridLayoutOptions объект. Это свойство задает опции для компонентов, которые являются дочерними элементами контейнеров макетов сетки. Если компонент не является дочерним элементом контейнера макетов сетки (например, это - дочерний элемент фигуры или панели), то это свойство пусто и не оказывает влияния. Однако, если компонент является дочерним элементом контейнера макетов сетки, можно поместить компонент в желаемую строку и столбец сетки путем установки Row и Column свойства на GridLayoutOptions объект.

Например, этот код помещает средство выбора даты в третью строку и второй столбец ее родительской сетки.

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

Чтобы заставить средство выбора даты охватить несколько строк или столбцов, задайте Row или Column свойство как двухэлементный вектор. Например, это средство выбора даты охватывает столбцы 2 через 3:

d.Layout.Column = [2 3];

Коллбэки

развернуть все

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

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

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

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

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

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

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

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

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

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

Функция создания объекта, заданная как одно из этих значений:

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

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

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

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

Это свойство задает функцию обратного вызова, чтобы выполниться, когда MATLAB создает объект. MATLAB инициализирует все значения свойств прежде, чем выполнить CreateFcn 'callback'. Если вы не задаете CreateFcn свойство, затем MATLAB выполняет функцию создания по умолчанию.

Установка CreateFcn свойство на существующем компоненте не оказывает влияния.

Если вы задаете это свойство как указатель на функцию или массив ячеек, можно получить доступ к объекту, который создается с помощью первого аргумента функции обратного вызова. В противном случае используйте gcbo функционируйте, чтобы получить доступ к объекту.

Функция удаления объекта, заданная как одно из этих значений:

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

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

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

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

Это свойство задает функцию обратного вызова, чтобы выполниться, когда MATLAB удаляет объект. MATLAB выполняет DeleteFcn коллбэк прежде, чем уничтожить свойства объекта. Если вы не задаете DeleteFcn свойство, затем MATLAB выполняет функцию удаления по умолчанию.

Если вы задаете это свойство как указатель на функцию или массив ячеек, можно получить доступ к объекту, который удаляется с помощью первого аргумента функции обратного вызова. В противном случае используйте gcbo функционируйте, чтобы получить доступ к объекту.

Контроль выполнения обратного вызова

развернуть все

Прерывание коллбэка, заданное как 'on' или 'off'. Interruptible свойство определяет, может ли рабочий коллбэк быть прерван.

Существует два состояния обратного вызова:

  • Выполняемый обратный вызов — это актуальный на данный момент обратный вызов.

  • Прерывающий обратный вызов — это обратный вызов, который пытается прервать текущий обратный вызов.

Каждый раз, когда MATLAB вызывает обратный вызов, этот обратный вызов пытается прервать текущий обратный вызов (если он существует). Interruptible свойство объекта, владеющего рабочим коллбэком, определяет, позволено ли прерывание. Interruptible свойство имеет два возможных значения:

  • 'on' — Позволяет другим коллбэкам прерывать коллбэки объекта. Прерывание происходит на следующем этапе, где MATLAB обрабатывает очередь, такой как тогда, когда существует drawnowфигураФигура пользовательского интерфейсаgetframewaitfor, или pause команда.

    • Если рабочий коллбэк содержит одну из тех команд, то MATLAB останавливает выполнение коллбэка в той точке и выполняет прерывание обратного вызова. MATLAB возобновляет выполнение обратного вызова при завершении прерывания.

    • Если рабочий коллбэк не содержит одну из тех команд, то MATLAB закончил выполнять коллбэк без прерывания.

  • 'off' — Блоки все попытки прерывания. BusyAction свойство объекта, владеющего прерыванием обратного вызова, определяет, отбрасывается ли прерывание обратного вызова или помещается в очередь.

Примечание

Прерывание и выполнение обратного вызова происходят по-разному в таких ситуациях:

  • Если прерыванием обратного вызова является DeleteFcnCloseRequestFcn или SizeChangedFcn коллбэк, затем прерывание происходит независимо от Interruptible значение свойства.

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

  • Timer объекты выполняются согласно расписанию независимо от Interruptible значение свойства.

Когда происходит прерывание, MATLAB не сохраняет состояние свойств или изображения. Например, объект, возвращенный gca или gcf команда может измениться, когда другой коллбэк выполняется.

Постановка в очередь коллбэка, заданная как 'queue' или 'cancel'. BusyAction свойство определяет, как MATLAB обрабатывает выполнение прерываний обратного вызова. Существует два состояния обратного вызова:

  • Выполняемый обратный вызов — это актуальный на данный момент обратный вызов.

  • Прерывающий обратный вызов — это обратный вызов, который пытается прервать текущий обратный вызов.

Каждый раз, когда MATLAB инициирует обратный вызов, этот обратный вызов пытается прервать текущий обратный вызов. Interruptible свойство объекта, владеющего рабочим коллбэком, определяет, разрешено ли прерывание. Если прерывание не разрешено, то BusyAction свойство объекта, владеющего прерыванием обратного вызова, определяет, отбрасывается ли это или вставило очередь. Это возможные значения BusyAction свойство:

  • 'queue' — Помещает прерывание обратного вызова в очередь, чтобы быть обработанным после рабочего выполнения концов коллбэка.

  • 'cancel' — Не выполняет прерывание обратного вызова.

Это свойство доступно только для чтения.

Состояние Deletion, возвращенное как 'off' или 'on'. MATLAB устанавливает BeingDeleted свойство к 'on' когда DeleteFcn коллбэк начинает выполнение. BeingDeleted свойство остается установленным в 'on' пока объект компонента больше не существует.

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

Родительский элемент/Дочерний элемент

развернуть все

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

Видимость указателя на объект, заданного как 'on''callback', или 'off'.

Это свойство контролирует видимость объекта в списке дочерних элементов его родителя. Когда объект не отображается в списке дочерних элементов его родителя, он не возвращается с помощью функций, которые получают объекты, просматривая иерархию объектов или запрашивая свойства. Эти функции включают getfindobjclf, и closeОбъекты действительны, даже если они не видны. Если вы можете получить доступ к объекту, вы можете установить его, получить его свойства и передать его любой функции, которая работает с объектами.

Значение HandleVisibilityОписание
'on'Объект всегда виден.
'callback'Объект отображается из коллбэков или функций, вызванных коллбэками, но не из функций, вызванных из командной строки. Эта опция блокирует доступ к объекту в командной строке, но позволяет обратным вызовам обращаться к нему.
'off'Объект невидим в любое время. Эта опция предназначена для предотвращения непреднамеренных изменений в пользовательском интерфейсе другой функцией. Установите HandleVisibility к 'off' временно скрыть объект во время выполнения этой функции.

Идентификаторы

развернуть все

Это свойство доступно только для чтения.

Тип графического объекта, возвращенного как 'uidatepicker'.

Идентификатор объекта, заданный как вектор символов или скаляр строки. Можно задать уникальный Tag значение, чтобы служить идентификатором для объекта. Когда вам нужен доступ к объекту в другом месте в вашем коде, можно использовать findobj функционируйте, чтобы искать основанное на объектах на Tag значение.

Пользовательские данные, заданные как любой массив MATLAB. Например, можно задать скаляр, вектор, матрицу, массив ячеек, символьный массив, таблицу или структуру. Используйте это свойство хранить произвольные данные на объекте.

Если вы работаете в App Designer, создаете публичные или частные свойства в приложении, чтобы осуществлять обмен данными вместо того, чтобы использовать UserData свойство. Для получения дополнительной информации смотрите, Осуществляют обмен данными В рамках Приложений App Designer.

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

| | |

Введенный в R2018a