Управление внешним видом и поведением компонентов пользовательского интерфейса таблицы в figureПриложения на основе
Перечисленные здесь свойства действительны для таблиц в GUIDE или в приложениях, созданных с помощью figure функция. При использовании App Designer или uifigure см. раздел Свойства таблицы. Дополнительные сведения см. в разделе Стратегии миграции GUIDE.
Компоненты пользовательского интерфейса таблицы отображают строки и столбцы данных в приложении. uitable создает компонент пользовательского интерфейса таблицы и задает все необходимые свойства перед его отображением. Изменяя значения свойств, можно изменять некоторые аспекты их внешнего вида и поведения. Используйте точечную нотацию для ссылки на определенный объект и свойство.
f = figure; t = uitable(f,'Data',[1 2 3; 4 5 6; 7 8 9]); t.FontSize = 9;
Data - Табличные данныеДанные таблицы, указанные как числовой массив, логический массив или массив ячеек. Данные таблицы могут быть любого числового типа, logical, или char. Используйте массив ячеек для указания комбинации различных типов данных.
Табличные данные отображаются в формате, заданном ColumnFormat собственность. Если существует несоответствие между типом данных таблицы и значением ColumnFormat MATLAB ® преобразует данные или выводит предупреждение. См. разделColumnFormat описание свойства для получения дополнительной информации.
Чтобы предотвратить появление предупреждений при вводе недопустимых данных, запишите CellEditCallback для преобразования данных в соответствующий тип.
Если количество строк в Data массив свойств не соответствует количеству элементов в RowName массив, то число строк в результирующей таблице больше двух значений. То же самое верно, когда ColumnName свойство не соответствует количеству столбцов в Data массив свойств.
Пример: t = uitable('Data',rand(10,3))
Пример: t = uitable('Data',{'blue' 5 true; 'orange' 25 false})
ColumnName - Названия заголовков столбцов'numbered' (по умолчанию) | nоколо-1 массив ячеек векторов символов | nоколо-1 категориальный массив | пустой массив ячеек ({}) | ...Имена заголовков столбцов, указанные как одно из следующих значений:
'numbered' - Заголовки столбцов представляют собой последовательные номера, начинающиеся с 1.
Массив ячеек векторов символов или категориальный массив - каждый элемент массива становится именем столбца. Если указать 1около-n массив ячеек, MATLAB сохраняет и возвращает значение в виде nоколо-1 массив ячеек. При указании mоколо-n MATLAB изменяет форму массива на вектор столбца. Укажите имя многострочного столбца, указав вертикальную косую черту (|) в имени столбца. Например, значение 'Telephone|Number' создает заголовок столбца с символом новой строки между словами «Телефон» и «Номер».
Пустой массив ячеек ({}) - В таблице нет заголовков столбцов.
Пустая матрица ([]) - В таблице нет заголовков столбцов
Если количество столбцов в Data массив свойств не соответствует количеству элементов в ColumnName массив, то количество столбцов в результирующей таблице больше двух значений.
Пример: t = uitable('ColumnName',{'Name'; 'Number'},'Data',{'Bob' 5})
Пример: t = uitable('ColumnName',{'Name'; []},'Data',{'Bob' 5})
Пример: t = uitable('ColumnName',{'Name'; 'Telephone|Number'},'Data',{'Bob','555-1212'})
ColumnWidth - Ширина столбцов таблицы'auto' (по умолчанию) |
1около-n массив ячеекШирина столбцов таблицы, указанная как 'auto' или в качестве 1около-n массив ячеек.
Каждый столбец в массиве ячеек соответствует столбцу в таблице. Значения представлены в единицах пикселей. При указании 'auto'затем MATLAB автоматически вычисляет ширину столбца, используя несколько факторов, одним из которых является ColumnName значение свойства.
Можно комбинировать фиксированную ширину столбцов и 'auto' ширины столбцов в массиве ячеек, или можно указать одно значение 'auto' для автоматического задания ширины всех столбцов.
Выбор параметра «Автоматическая ширина» в редакторе свойств таблицы имеет тот же эффект, что и установка параметра ColumnWidth свойство для 'auto'.
Пример: t = uitable('ColumnWidth','auto','Data',[1 2 3; 4 5 6])
Пример: t = uitable('ColumnWidth',{64 60 40},'Data',[1 2 3; 4 5 6])
Пример: t = uitable('ColumnWidth',{64 'auto' 40},'Data',[1 2 3; 4 5 6])
ColumnEditable - Возможность редактирования ячеек столбцов[] (по умолчанию) | логический 1около-n массив | логический скалярВозможность редактирования ячеек столбцов, указанных как:
Пустой логический массив ([]) - Нет редактируемых столбцов.
Логическое 1около-n array - этот массив указывает, какие столбцы можно редактировать. Значение n равно количеству столбцов в таблице. Каждое значение в массиве соответствует столбцу таблицы. Значение true в массиве делает ячейки в этом столбце редактируемыми. Значение false делает ячейки в этом столбце неизменяемыми.
Логический скаляр - таблица целиком редактируется или не редактируется .
Пример: t = uitable('Data',rand(10,3),'ColumnEditable',[false true true])
Пример: t = uitable('Data',rand(10,3),'ColumnEditable',false)
Столбцы таблицы, содержащие флажки или всплывающие меню, должны быть доступны для редактирования, чтобы пользователь мог взаимодействовать с этими элементами управления.
ColumnFormat - Формат отображения ячеек{}) (по умолчанию) | 1около-n массив ячеек символьных векторовФормат отображения ячеек, указанный как пустой массив ячеек или 1около-n клеточный массив символьных векторов.
Это свойство определяет способ отображения данных в каждом столбце и ограничения для редактирования этих данных в интерфейсе пользователя. Элементы массива ячеек соответствуют столбцам в Data массив свойств. Если не требуется указывать формат отображения для определенного столбца, укажите [] для этой колонки. Если формат столбца не задан, MATLAB определяет отображение по умолчанию по типу данных в ячейке.
Элементы массива ячеек должны быть одним из значений, описанных в следующей таблице.
Значение формата ячейки | Описание |
|---|---|
'char' | Отображение значений, выровненных по левому краю Для редактирования ячейки пользователь вводит текст, заменяющий существующее значение. Если элемент в |
'logical' | Отображение флажков. Для редактирования ячейки пользователь устанавливает или снимает флажок. Затем MATLAB устанавливает соответствующий Первоначально флажок устанавливается, когда соответствующий |
'numeric' | Отображение выровненного по правому краю значения, эквивалентного отображению числовых данных в окне команд. Если элемент в Для редактирования ячейки пользователь может ввести любой текст. Если пользователь вводит текст, представляющий константу, например |
A 1около-n клеточный массив символьных векторов, таких как {'one' 'two' 'three'} | Отображение всплывающего меню. Для редактирования ячейки пользователь выбирает элемент из всплывающего меню. MATLAB устанавливает соответствующие |
Имя формата, принятое | Отображение |
Если ColumnFormat значение определяет всплывающее меню, начальное Data значение не обязательно должно быть одним из параметров в этом меню. Начальная буква Data значение отображается до тех пор, пока пользователь не сделает другой выбор.
Например, предположим, что Data значение свойства для данного столбца 'Choose' для всех строк и ColumnFormat значение задает всплывающее меню с вариантами 'group 1' и 'group 2'. Когда MATLAB создает таблицу, эти ячейки таблицы отображаются 'Choose' пока пользователь не выберет пункт во всплывающем меню:
f = figure;
myData = {'Andrew' 31 'Male' 'Choose'; ...
'Bob' 41 'Male' 'Choose'; ...
'Anne' 20 'Female' 'Choose';};
t = uitable('Parent', f,...
'Position', [25 25 334 78],...
'ColumnFormat',({[] [] [] {'group 1' 'group 2'}}),...
'ColumnEditable', true,...
'Data', myData);

В этой таблице описывается отображение различных типов данных с конкретными ColumnFormat значения.
| ColumnFormat | ||||
'numeric' | 'char' | 'logical' | ||
| Тип данных значения массива данных | Любой числовой тип | В таблице отображается номер как есть. | MATLAB преобразует значение в текст и отображает его в таблице с выравниванием влево. Если MATLAB не может преобразовать значение, то NaN дисплеи. | Не рекомендуется. MATLAB может возвращать предупреждение, когда пользователь редактирует ячейку, если вы не определяете CellEditCallback функция. |
char | Таблица отображает значение, выровненное вправо, как если бы оно было числом. | Таблица отображает значение как есть. | Не рекомендуется. MATLAB может возвращать предупреждение, когда пользователь редактирует ячейку, если вы не определяете CellEditCallback функция. | |
logical | Таблица отображает логические значения в виде чисел. MATLAB может возвращать предупреждение, когда пользователь редактирует ячейку, если вы не определяете CellEditCallback функция. | Таблица отображает логическое значение как выровненное по левому краю 'true' или 'false'. MATLAB может возвращать предупреждение, когда пользователь редактирует ячейку, если вы не определяете CellEditCallback функция. | Таблица отображает логические значения в виде флажков. | |
Например, в следующей таблице первый столбец (X-Data) остается выровненным, поскольку ColumnFormat значение для этого столбца равно 'char'.

RowName - Имена заголовков строк'numbered' (по умолчанию) | nоколо-1 массив ячеек векторов символов | nоколо-1 категориальный массив | пустой массив ячеек ({}) | ...Имена заголовков строк, указанные как одно из следующих значений:
'numbered' - Заголовки строк представляют собой последовательные номера, начинающиеся с 1.
Массив ячеек векторов символов или категориальный массив - каждый элемент массива становится именем строки. Имена строк ограничены одной строкой текста. Если указать 1около-n массив ячеек, MATLAB сохраняет и возвращает значение в виде nоколо-1 массив ячеек. При указании mоколо-n MATLAB изменяет форму массива на вектор столбца.
Пустой массив ячеек ({}) - Таблица не имеет заголовков строк.
Пустая матрица ([]) - Таблица не имеет заголовков строк
Если количество строк в Data массив свойств не соответствует количеству элементов в RowName массив, то число строк в результирующей таблице больше двух значений.
Пример: t = uitable('RowName',{'Name';'Number'},'Data',{'Bob';5})
Пример: t = uitable('RowName',{'Name';[]},'Data',{'Bob';5})
RearrangeableColumns - Возможность переупорядочивания столбцов таблицы'off' (по умолчанию) | логическое значение on/offВозможность переупорядочивания столбцов таблицы, указанных как 'off' или 'on'или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства в качестве логического значения. Значение сохраняется как логическое значение типа вкл/выкл matlab.lang.OnOffSwitchState.
Это свойство позволяет пользователям изменить порядок столбцов таблицы (но не меток), щелкнув и перетащив заголовки столбцов.
Примечание
Переупорядочивание столбцов таблицы в интерфейсе пользователя не влияет на столбцы в Data массив свойств.
FontName - Название шрифта'FixedWidth'Имя шрифта, указанное как имя поддерживаемого системой шрифта или 'FixedWidth'. Шрифт по умолчанию зависит от конкретной операционной системы и языка.
Чтобы использовать шрифт фиксированной ширины, который хорошо выглядит в любом языковом стандарте, укажите 'FixedWidth'. Фактически используемый шрифт фиксированной ширины зависит от FixedWidthFontName свойства корневого объекта. Изменение FixedWidthFontName приводит к немедленному обновлению отображения для использования нового шрифта.
Пример: 'Arial'
FontSize - Размер шрифтаРазмер шрифта, указанный как положительное число. FontUnits свойство определяет единицы измерения. Размер по умолчанию зависит от системы.
Пример: 12
Пример: 12.5
FontWeight - Вес шрифта'normal' (по умолчанию) | 'bold'Вес шрифта, указанный как значение из следующей таблицы.
'normal' - Вес по умолчанию, определенный определенным шрифтом
'bold' - Более толстые очертания символов, чем обычно
MATLAB использует FontWeight для выбора шрифта из доступных в системе. Не все шрифты имеют жирный вес. Поэтому задание полужирного веса шрифта может привести к нормальному весу шрифта.
Примечание
'light' и 'demi' значения веса шрифта удалены в R2014b. При указании любого из этих значений получается обычный вес шрифта.
FontAngle - Угол шрифта'normal' (по умолчанию) | 'italic'Угол шрифта, указанный как 'normal' или 'italic'. MATLAB использует это свойство для выбора шрифта из доступных в системе. Установка для этого свойства значения 'italic' выбирает наклонную версию шрифта, если она доступна в системе.
Примечание
'oblique' значение удалено. Использовать 'italic' вместо этого.
FontUnits - Единицы шрифта'points' (по умолчанию) | 'normalized' | 'inches' | 'centimeters' | 'pixels'Единицы шрифта, указанные как одно из значений из этой таблицы.
| Значение единиц | Описание |
|---|---|
'points' | Очки. Одна точка равна 1/72 дюйма. |
'normalized' | Нормализованные значения для указания размера шрифта как доли высоты. При изменении размера компонента пользовательского интерфейса MATLAB масштабирует отображаемый шрифт для сохранения этой дроби. |
'inches' | Дюймов. |
'centimeters' | Сантиметров. |
'pixels' | Пикселы. Начиная с R2015b, расстояния в пикселях не зависят от разрешения системы в системах Windows ® и Macintosh :
В системах Linux ® размер пикселя определяется разрешением системы. |
Visible - Состояние видимости'on' (по умолчанию) | логическое значение on/offСостояние видимости, указанное как 'on' или 'off'или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства в качестве логического значения. Значение сохраняется как логическое значение типа вкл/выкл matlab.lang.OnOffSwitchState.
'on' - Просмотр объекта.
'off' - Скрыть объект, не удаляя его. По-прежнему можно получить доступ к свойствам невидимого компонента пользовательского интерфейса.
Чтобы приложение начиналось быстрее, установите Visible свойство для 'off' для всех компонентов пользовательского интерфейса, которые не должны появляться при запуске.
Enable - Рабочее состояние таблицы'on' (по умолчанию) | 'inactive' | 'off'Рабочее состояние таблицы, указанное как 'on', 'off', или 'inactive'. Enable определяет, реагирует ли компонент пользовательского интерфейса на нажатие кнопки. Существует три возможных значения:
'on' - Компонент пользовательского интерфейса работает.
'off' - Компонент пользовательского интерфейса не работает и отображается серым цветом.
'inactive' - Компонент пользовательского интерфейса не работает, но имеет тот же вид, что и когда Enable является 'on'.
Значение Enable свойство и тип кнопки определяют реакцию пользовательского интерфейса.
| Включить значение | Ответ на щелчок левой кнопкой мыши | Ответ на щелчок правой кнопкой мыши |
|---|---|---|
'on' | |
|
'off' или 'inactive' |
|
|
Tooltip - ПодсказкаПодсказка, заданная как символьный вектор, строковый скаляр или категориальный массив. Это свойство используется для отображения сообщения при наведении указателя на компонент во время выполнения. Подсказка не отображается, когда компонент отключен. Если это свойство указано как категориальный массив, MATLAB использует значения в массиве, а не полный набор категорий.
Для создания нескольких строк текста используйте sprintf для вставки новых символов строки ('\n') в вашем тексте. Например:
txt = sprintf('Line 1\nLine 2');Затем установите Tooltip свойство к значению, возвращенному sprintf.
ContextMenu - Контекстное менюGraphicsPlaceholder массив (по умолчанию) | ContextMenu объектКонтекстное меню, указанное как ContextMenu объект, созданный с помощью uicontextmenu функция. Это свойство используется для отображения контекстного меню при щелчке правой кнопкой мыши на компоненте.
TooltipString - Подсказка (не рекомендуется)Подсказка, заданная как символьный вектор, строковый скаляр или категориальный массив. Подсказка появляется при наведении курсора на компонент в приложении. Если это свойство указано как категориальный массив, MATLAB использует значения в массиве, а не полный набор категорий.
Примечание
TooltipString не рекомендуется запускать свойство в R2018b. Используйте Tooltip вместо этого свойство.
Selected - Состояние выбора (не рекомендуется)'off' (по умолчанию) | логическое значение on/off
Примечание
Поведение Selected свойство изменено в R2014b и не рекомендуется. Он больше не влияет на объекты этого типа. Это свойство может быть удалено в следующем выпуске.
SelectionHighlight - Отображение ручек выбора (не рекомендуется)'on' (по умолчанию) | логическое значение on/off
Примечание
Поведение SelectionHighlight свойство изменено в R2014b и не рекомендуется. Он больше не влияет на объекты этого типа. Это свойство может быть удалено в следующем выпуске.
ForegroundColor - Цвет текста ячейки[0 0 0] (по умолчанию) | триплет RGB | шестнадцатеричный цветовой код | 'r' | 'g' | 'b' | ...Цвет текста ячейки, указанный как триплет 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' |
|
BackgroundColor - Цвет фона[1 1 1; 0.94 0.94 0.94] (по умолчанию) | триплет RGB | матрица m-by-3 триплетов RGBЦвет фона, определяемый как триплет RGB или матрица m-на-3 триплетов RGB. Триплет RGB - это вектор строки, задающий интенсивности красного, зеленого и синего компонентов цвета. Интенсивности должны быть в диапазоне, [0,1]. Недопустимые имена цветов.
Укажите матрицу m-на-3, если требуется, чтобы затенение строк таблицы соответствовало повторяющемуся образцу из m различных цветов. Каждая строка матрицы должна быть триплетом RGB. MATLAB использует строки матрицы, когда RowStriping свойство - 'on'. Фон таблицы не чередуется, если только оба RowStriping является 'on' и BackgroundColor является матрицей m-на-3.
Пример: t = uitable('Data',rand(10,3),'BackgroundColor',[0.85 0.85 1])
Пример: t = uitable('Data',rand(10,3),'BackgroundColor',[1 1 1 ;0.85 0.85 1])
В следующей таблице перечислены триплеты RGB для определенных цветов.
| Цвет | Триплет RGB |
|---|---|
| Желтый | [1 1 0] |
| Пурпурный | [1 0 1] |
| Голубой | [0 1 1] |
| Красный | [1 0 0] |
| Зеленый | [0 1 0] |
| Синий | [0 0 1] |
| Белый | [1 1 1] |
| Черный | [0 0 0] |
RowStriping - Альтернативное затенение строк'on' (по умолчанию) | логическое значение on/offАльтернативное затенение строки, указанное как 'on' или 'off'или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства в качестве логического значения. Значение сохраняется как логическое значение типа вкл/выкл matlab.lang.OnOffSwitchState.
Это свойство управляет шаблоном затенения строк таблицы. Когда RowStriping установлено значение 'on', BackgroundColor матрица задает цвета строк для отображения в повторяющемся шаблоне. Если BackgroundColor матрица имеет только одну строку, то затенение одинаково во всех строках таблицы.
Когда RowStriping имеет значение 'off', то первый цвет в BackgroundColor матрица определяет затенение для всех строк в таблице.
Position - Местоположение и размер[left bottom width height]Местоположение и размер, указанные как четырехэлементный вектор формы [left bottom width height]. В этой таблице описывается каждый элемент вектора.
| Элемент | Описание |
|---|---|
left | Расстояние от внутреннего левого края родительского контейнера до внешнего левого края таблицы |
bottom | Расстояние от внутреннего нижнего края родительского контейнера до внешнего нижнего края стола |
width | Расстояние между правым и левым наружными краями таблицы |
height | Расстояние между верхним и нижним наружными краями таблицы |
Все измерения в единицах, указанных Units собственность.
Примечание
Position значения относятся к области извлечения родительского контейнера. Извлекаемая область представляет собой область внутри границ контейнера и не включает область, занимаемую заголовком. Если родительский контейнер является рисунком, область извлечения также исключает строку меню и панель инструментов.
Используйте Extent для определения правильного размера таблицы относительно данных. Установите width и height из Position к ширине и высоте Extent собственность. Помните, что если таблица имеет большие границы, это может привести к тому, что таблица выйдет за пределы правого или верхнего края родительского контейнера.
Можно комбинировать точечную нотацию и индексацию массива, если требуется изменить одно или два последовательных значения в Position вектор. Например, этот код задает ширину и высоту таблицы, соответствующие Extent таблицы:
t = uitable('Data',rand(10,3));
t.Position(3:4) = t.Extent(3:4);InnerPosition - Местоположение и размер[left bottom width height]Местоположение и размер, указанные как четырехэлементный вектор формы [left bottom width height]. Все измерения в единицах, указанных Units собственность.
Это значение свойства идентично значению Position и OuterPosition значения свойств.
OuterPosition - Местоположение и размер[left bottom width height]Местоположение и размер, указанные как четырехэлементный вектор формы [left bottom width height]. Все измерения в единицах, указанных Units собственность.
Это значение свойства идентично значению Position и InnerPosition значения свойств.
Extent - Размер охватывающего прямоугольникаЭто свойство доступно только для чтения.
Размер охватывающего прямоугольника, возвращаемого в виде четырехэлементного вектора строки. Первые два элемента вектора всегда равны нулю. Третий и четвертый элементы представляют собой ширину и высоту прямоугольника, содержащего таблицу, соответственно. Все измерения в единицах, указанных Units собственность.
MATLAB определяет размер прямоугольника на основе текущего Data, RowName и ColumnName значения свойств. MATLAB оценивает значения ширины и высоты с использованием ширины столбца и строки. Предполагаемая протяженность может быть больше, чем цифра.
Рассмотрите возможность использования Extent значение свойства при указании значений ширины и высоты Position собственность.
Units - Единицы измерения'pixels' (по умолчанию) | 'normalized' | 'inches' | 'centimeters' | 'points' | 'characters'Единицы измерения, указанные в данной таблице в качестве одного из значений.
| Значение единиц | Описание |
|---|---|
'pixels' (по умолчанию) | Пикселы. Начиная с R2015b, расстояния в пикселях не зависят от разрешения системы в системах Windows и Macintosh:
В системах Linux размер пикселя определяется разрешением вашей системы. |
'normalized' | Эти единицы нормализуются относительно родительского контейнера. Нижний левый угол контейнера соответствует (0,0) и карты верхнего правого угла для (1,1). |
'inches' | Дюймов. |
'centimeters' | Сантиметров. |
'points' | Очки. Одна точка равна 1/72-й дюйма. |
'characters' | Эти единицы основаны на стандартном шрифте uicontrol объекта graphics root:
Для доступа к шрифту uicontrol по умолчанию используйте |
MATLAB измеряет все единицы измерения из левого нижнего угла родительского объекта.
Это свойство влияет на Position собственность. При изменении Units рассмотрите возможность возврата его значения к значению по умолчанию после завершения вычислений, чтобы избежать влияния на другие функции, которые принимают значение по умолчанию.
Порядок, в котором указывается Units и Position свойства имеют следующие эффекты:
При указании Units до Position свойство, затем наборы MATLAB Position с использованием указанных единиц измерения.
При указании Units после Position MATLAB устанавливает положение с использованием значения по умолчанию Units. Затем MATLAB преобразует Position эквивалентное значение в указанных единицах измерения.
CellEditCallback - Функция обратного вызова редактирования ячейкиФункция обратного вызова редактирования ячейки, заданная как одно из следующих значений:
Дескриптор функции.
Массив ячеек, в котором первый элемент является дескриптором функции. Последующие элементы в массиве ячеек являются аргументами для передачи функции обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуется). MATLAB вычисляет это выражение в базовой рабочей области.
Дополнительные сведения об указании значения свойства обратного вызова в качестве дескриптора функции, массива ячеек или символьного вектора см. в разделе Как задать значения свойства обратного вызова.
Эта функция выполняется при изменении пользователем содержимого ячейки таблицы. Эту функцию обратного вызова можно использовать для выполнения вычислений или проверки пользовательского ввода.
Если это свойство указано как дескриптор функции (или массив ячеек, содержащий дескриптор функции), MATLAB передает CellEditData объект, содержащий данные события в качестве второго аргумента функции обратного вызова. Этот объект содержит свойства, описанные в следующей таблице. Эти свойства можно получить в функции обратного вызова с помощью точечной нотации.
Собственность | Описание |
|---|---|
Indices | Массив 1 на 2, содержащий индексы строк и столбцов ячейки, которую пользователь редактировал. |
PreviousData | Данные предыдущей ячейки. По умолчанию используется пустая матрица, |
EditData | Введенное пользователем значение. |
NewData | Значение, которое MATLAB написал |
Error | Если MATLAB обнаруживает ошибку в введенных пользователем данных, возвращается сообщение об ошибке. Если |
Source | Объект таблицы, выполняющий |
EventName |
|
Когда пользователь редактирует ячейку таблицы, MATLAB выполняет следующие шаги:
Пытается сохранить новое значение в Data свойство таблицы
Вызывает CellEditCallback функция (если она существует)
Если значение приводит к ошибке и нет CellEditCallback функция, то данные ячейки возвращается к своему предыдущему значению и ошибка не отображается.
В этом примере показано, как создать функцию обратного вызова, которая вычисляет введенные пользователем данные в числовой ячейке таблицы. Вставьте этот код в редактор и запустите его, чтобы узнать, как он работает.
function myui f = figure; myData = { 'A ' 31; 'B' 41; 'C' 5; 'D' 2.6}; t = uitable('Parent',f,... 'Position', [25 25 700 200], ... 'Data',myData,... 'ColumnEditable', [false true], ... 'CellEditCallback',@converttonum); function converttonum(hObject,callbackdata) numval = eval(callbackdata.EditData); r = callbackdata.Indices(1) c = callbackdata.Indices(2) hObject.Data{r,c} = numval; end end
При выполнении myui, можно изменить значение во втором столбце таблицы. В ответ converttonum выполняется функция обратного вызова. converttonum функция использует eval для оценки вводимых данных. Затем он устанавливает для данных ячейки значение numval. Например, при вводе pi или1+1, converttonum устанавливает значение ячейки таблицы в числовое представление входных данных. Из-за отсутствия ошибки при возврате converttonum функция, недопустимые выражения возвращают ошибку, и новое значение ячейки таблицы становится NaN.
CellSelectionCallback - Функция обратного вызова при выборе сотыФункция обратного вызова при выборе соты, заданная как одно из следующих значений:
Дескриптор функции.
Массив ячеек, в котором первый элемент является дескриптором функции. Последующие элементы в массиве ячеек являются аргументами для передачи функции обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуется). MATLAB вычисляет это выражение в базовой рабочей области.
Дополнительные сведения об указании значения свойства обратного вызова в качестве дескриптора функции, массива ячеек или символьного вектора см. в разделе Как задать значения свойства обратного вызова.
Эта функция обратного вызова выполняется при выполнении пользователем одного из следующих действий:
Выделяет ячейку данных (не ячейку заголовка строки или столбца), щелкнув ее или перейдя к ней с помощью клавиши со стрелкой
Выбор прямоугольной группы ячеек с помощью клавиши Shift при выборе ячеек
Отмена выделения ячейки путем щелчка на ней при нажатой клавише Ctrl
Если это свойство указано как дескриптор функции (или массив ячеек, содержащий дескриптор функции), MATLAB передает CellSelectionChangeData объект, содержащий данные события в качестве второго аргумента функции обратного вызова. Этот объект содержит свойства, перечисленные в следующей таблице.
Собственность | Описание |
|---|---|
Indices | Массив n-by-2, содержащий индексы строк и столбцов выбранной пользователем ячейки. |
Source | Объект таблицы, выполняющий команду |
EventName |
|
ButtonDownFcn - Кнопка-нажатие функции обратного вызова'' (по умолчанию) | дескриптор функции | массив ячеек | символьный векторКнопка - нажмите функцию обратного вызова, заданную как одно из следующих значений:
Дескриптор функции.
Массив ячеек, в котором первый элемент является дескриптором функции. Последующие элементы в массиве ячеек являются аргументами для передачи функции обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуется). MATLAB вычисляет это выражение в базовой рабочей области.
Дополнительные сведения об указании значения свойства обратного вызова в качестве дескриптора функции, массива ячеек или символьного вектора см. в разделе Как задать значения свойства обратного вызова.
ButtonDownFcn Обратный вызов - это функция, выполняемая при нажатии кнопки мыши на компоненте пользовательского интерфейса. Обратный вызов выполняется в следующих ситуациях:
Пользователь щелкает таблицу правой кнопкой мыши и Enable свойство имеет значение 'on'.
Пользователь щелкает правой кнопкой мыши или левой кнопкой мыши таблицу и Enable свойство имеет значение 'off' или 'inactive'.
KeyPressFcn - Нажмите клавишу с функцией обратного вызова'' (по умолчанию) | дескриптор функции | массив ячеек | символьный векторНажмите на функцию обратного вызова, заданную как одно из следующих значений:
Дескриптор функции.
Массив ячеек, в котором первый элемент является дескриптором функции. Последующие элементы в массиве ячеек являются аргументами для передачи функции обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуется). MATLAB вычисляет это выражение в базовой рабочей области.
Дополнительные сведения об указании значения свойства обратного вызова в качестве дескриптора функции, массива ячеек или символьного вектора см. в разделе Как задать значения свойства обратного вызова.
Эта функция обратного вызова выполняется при Table объект имеет фокус, и пользователь нажимает клавишу. Если функция для этого свойства не определена, MATLAB передает нажатие клавиши родительской фигуре. Повторяющиеся нажатия клавиш сохраняют фокус Table и функция выполняется при каждом нажатии клавиши. Если пользователь нажимает несколько клавиш приблизительно одновременно, MATLAB обнаруживает нажатие клавиши для последней нажатой клавиши.
Если это свойство указано как дескриптор функции (или массив ячеек, содержащий дескриптор функции), MATLAB передает объект, содержащий данные обратного вызова, в качестве второго аргумента функции обратного вызова. Этот объект содержит свойства, описанные в следующей таблице. Эти свойства можно получить в функции обратного вызова с помощью точечной нотации.
Собственность | Описание | Примеры: | |||
|---|---|---|---|---|---|
a | = | Изменение | Смена-а | ||
Character | Символ, отображаемый в результате нажатия клавиши или клавиш. Символ может быть пустым или непечатаемым. | 'a' | '=' | '' | 'A' |
Modifier | Массив ячеек, содержащий имена одной или нескольких клавиш-модификаторов, которые нажимаются (например, Ctrl, Alt, Shift). | {1x0 cell} | {1x0 cell} | {'shift'} | {'shift'} |
Key | Нажимаемая клавиша, обозначаемая меткой (в нижнем регистре) на клавише или текстовым описанием. | 'a' | 'equal' | 'shift' | 'a' |
Source | Объект, имеющий фокус при нажатии пользователем клавиши. | Table объект | Table объект | Table объект | Table объект |
EventName | Действие, вызвавшее выполнение функции обратного вызова. | 'KeyPress' | 'KeyPress' | 'KeyPress' | 'KeyPress' |
Нажатие клавиш-модификаторов влияет на данные обратного вызова следующими способами:
Клавиши-модификаторы могут влиять на Character свойство, но не изменять Key собственность.
Некоторые клавиши и клавиши, измененные с помощью Ctrl, помещают непечатаемые символы в Character собственность.
Клавиши Ctrl, Alt, Shift и некоторые другие клавиши не генерируются Character данные свойств.
Также можно запросить CurrentCharacter свойство фигуры, чтобы определить, какой символ нажал пользователь.
KeyReleaseFcn - Функция обратного вызова с освобождением ключа'' (по умолчанию) | дескриптор функции | массив ячеек | символьный векторФункция обратного вызова освобождения ключа, заданная как одно из следующих значений:
Дескриптор функции.
Массив ячеек, в котором первый элемент является дескриптором функции. Последующие элементы в массиве ячеек являются аргументами для передачи функции обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуется). MATLAB вычисляет это выражение в базовой рабочей области.
Дополнительные сведения об указании значения свойства обратного вызова в качестве дескриптора функции, массива ячеек или символьного вектора см. в разделе Как задать значения свойства обратного вызова.
Эта функция обратного вызова выполняется при Table объект имеет фокус, и пользователь освобождает ключ.
Если это свойство указано как дескриптор функции (или массив ячеек, содержащий дескриптор функции), MATLAB передает объект, содержащий данные обратного вызова, в качестве второго аргумента функции обратного вызова. Этот объект содержит свойства, описанные в следующей таблице. Эти свойства можно получить в функции обратного вызова с помощью точечной нотации.
Собственность | Описание | Примеры: | |||
|---|---|---|---|---|---|
a | = | Изменение | Смена-а | ||
Character | Интерпретация символов ключа, который был выпущен. | 'a' | '=' | '' | 'A' |
Modifier | Текущий модификатор, например | {1x0 cell} | {1x0 cell} | {1x0 cell} | {1x0 cell} |
Key | Имя выпущенного ключа, определяемое строчной меткой на ключе или текстовым описанием. | 'a' | 'equal' | 'shift' | 'a' |
Source | Объект, имеющий фокус при нажатии пользователем клавиши. | Table объект | Table объект | Table объект | Table объект |
EventName | Действие, вызвавшее выполнение функции обратного вызова. | 'ase' | 'ase' | 'ase' | 'ase' |
Нажатие клавиш-модификаторов влияет на данные обратного вызова следующими способами:
Клавиши-модификаторы могут влиять на Character свойство, но не изменять Key собственность.
Некоторые клавиши и клавиши, измененные с помощью Ctrl, помещают непечатаемые символы в Character собственность.
Клавиши Ctrl, Alt, Shift и некоторые другие клавиши не генерируются Character данные свойств.
Также можно запросить CurrentCharacter свойство фигуры, чтобы определить, какой символ нажал пользователь.
CreateFcn - Функция создания компонента'' (по умолчанию) | дескриптор функции | массив ячеек | символьный векторФункция создания компонента, заданная как одно из следующих значений:
Дескриптор функции.
Массив ячеек, в котором первый элемент является дескриптором функции. Последующие элементы в массиве ячеек являются аргументами для передачи функции обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуется). MATLAB вычисляет это выражение в базовой рабочей области.
Дополнительные сведения об указании значения свойства обратного вызова в качестве дескриптора функции, массива ячеек или символьного вектора см. в разделе Как задать значения свойства обратного вызова.
Это свойство определяет функцию обратного вызова, выполняемую при создании компонента MATLAB. MATLAB инициализирует все значения свойств компонентов перед выполнением CreateFcn обратный вызов. Если не указать CreateFcn , то MATLAB выполняет функцию создания по умолчанию.
Используйте gcbo функция в вашей CreateFcn для получения создаваемого объекта компонента.
Установка CreateFcn свойство для существующего объекта-компонента не влияет.
DeleteFcn - Функция удаления компонента'' (по умолчанию) | дескриптор функции | массив ячеек | символьный векторФункция удаления компонента, заданная как одно из следующих значений:
Дескриптор функции.
Массив ячеек, в котором первый элемент является дескриптором функции. Последующие элементы в массиве ячеек являются аргументами для передачи функции обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуется). MATLAB вычисляет это выражение в базовой рабочей области.
Дополнительные сведения об указании значения свойства обратного вызова в качестве дескриптора функции, массива ячеек или символьного вектора см. в разделе Как задать значения свойства обратного вызова.
DeleteFcn свойство определяет функцию обратного вызова, выполняемую при удалении компонента MATLAB (например, при закрытии окна пользователем). MATLAB выполняет команду DeleteFcn обратный вызов перед уничтожением свойств объекта компонента. Если не указать DeleteFcn , то MATLAB выполняет функцию удаления по умолчанию.
Используйте gcbo функция в вашей DeleteFcn для получения удаляемого объекта компонента.
Interruptible - Прерывание обратного вызова'on' (по умолчанию) | on/off логические значенияПрерывание обратного вызова, указанное как 'on' или 'off'или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства в качестве логического значения. Значение сохраняется как логическое значение типа вкл/выкл matlab.lang.OnOffSwitchState.
Interruptible определяет, можно ли прервать выполняющийся обратный вызов. Существует два состояния обратного вызова:
Выполняемый обратный вызов - это выполняемый в данный момент обратный вызов.
Обратный вызов с прерыванием - это обратный вызов, который пытается прервать выполняющийся обратный вызов.
Всякий раз, когда MATLAB вызывает обратный вызов, этот обратный вызов пытается прервать выполняющийся обратный вызов (если он существует). Interruptible свойство объекта, владеющего выполняющимся обратным вызовом, определяет, разрешено ли прерывание:
Значение 'on' позволяет другим обратным вызовам прерывать обратные вызовы объекта. Прерывание происходит в следующей точке, где MATLAB обрабатывает очередь, например, при наличии drawnow, figure, getframe, waitfor, или pause.
Если выполняемый обратный вызов содержит одну из этих команд, MATLAB останавливает выполнение обратного вызова в этот момент и выполняет обратный вызов с прерыванием. MATLAB возобновляет выполнение выполняющегося обратного вызова после завершения прерванного обратного вызова.
Если выполняемый обратный вызов не содержит одну из этих команд, MATLAB завершает выполнение обратного вызова без прерывания.
Значение 'off' блокирует все попытки прерывания. BusyAction свойство объекта, владеющего прерывистым обратным вызовом, определяет, отбрасывается ли прерывистый обратный вызов или помещается в очередь.
Примечание
Прерывание и выполнение обратного вызова ведут себя по-разному в следующих ситуациях:
Если обратный вызов с прерыванием является DeleteFcn, CloseRequestFcn, или SizeChangedFcn обратный вызов, то прерывание происходит независимо от Interruptible значение свойства.
Если выполняемый обратный вызов в данный момент выполняется waitfor функция, то прерывание происходит независимо от Interruptible значение свойства.
Timer объекты выполняются в соответствии с графиком независимо от Interruptible значение свойства.
MATLAB не сохраняет состояние свойств или отображения при прерывании. Например, объект, возвращенный gca или gcf при выполнении другого обратного вызова команда может измениться.
Пример, показывающий, как Interruptible и BusyAction свойства влияют на поведение программы.
BusyAction - Постановка в очередь обратного вызова'queue' (по умолчанию) | 'cancel'Очередь обратного вызова указана как 'queue' (по умолчанию) или 'cancel'. BusyAction определяет, как MATLAB обрабатывает выполнение прерывания обратных вызовов. Существует два состояния обратного вызова:
Выполняемый обратный вызов - это выполняемый в данный момент обратный вызов.
Обратный вызов с прерыванием - это обратный вызов, который пытается прервать выполняющийся обратный вызов.
BusyAction свойство источника обратного вызова прерывания определяет, как MATLAB обрабатывает его выполнение. BusyAction свойство имеет следующие значения:
'queue' - Поместить прерывистый обратный вызов в очередь для обработки после завершения выполнения выполняющегося обратного вызова.
'cancel' - Не выполняйте обратный вызов прерывания.
Всякий раз, когда MATLAB вызывает обратный вызов, этот обратный вызов всегда пытается прервать выполнение обратного вызова. Interruptible свойство объекта, обратный вызов которого выполняется, определяет, разрешено ли прерывание. Если Interruptible имеет значение:
on - Прерывание происходит в следующей точке, где MATLAB обрабатывает очередь. Это значение по умолчанию.
off- BusyAction свойство (объекта, владеющего прерывистым обратным вызовом) определяет, ставит ли MATLAB в очередь или игнорирует прерывистый обратный вызов.
Пример, показывающий, как BusyAction и Interruptible свойства влияют на поведение программы.
BeingDeleted - Статус удаленияЭто свойство доступно только для чтения.
Состояние удаления, возвращаемое как логическое значение включения/выключения типа matlab.lang.OnOffSwitchState.
MATLAB устанавливает BeingDeleted свойство для 'on' когда DeleteFcn обратный вызов начинает выполнение. BeingDeleted свойство остается установленным в значение 'on' до тех пор, пока объект-компонент больше не будет существовать.
Проверьте значение BeingDeleted для проверки того, что объект не будет удален перед запросом или изменением.
HitTest - Возможность стать текущим объектом'on' (по умолчанию) | логическое значение on/offВозможность стать текущим объектом, указанным как 'on' или 'off'или как числовое или логическое 1 (true) или 0 (false). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства в качестве логического значения. Значение сохраняется как логическое значение типа вкл/выкл matlab.lang.OnOffSwitchState.
'on' - устанавливает текущий объект в Table когда пользователь щелкает компонент в запущенном приложении. CurrentObject имущества Figure и gco функция возвращает Table в качестве текущего объекта.
'off' - задает текущий объект в качестве ближайшего предка Table чей HitTest является 'on' когда пользователь щелкает компонент в запущенном приложении.
Parent - Родительский объектFigure | Panel | ButtonGroup | TabРодительский объект, указанный как Figure, Panel, ButtonGroup, или Tab объект. Это свойство используется для указания родительского контейнера при создании компонента пользовательского интерфейса или для перемещения существующего компонента пользовательского интерфейса в другой родительский контейнер.
Children — Table детиTable потомков, возвращенных в виде пустого массива. Table объекты не имеют потомков. Установка этого свойства не влияет.
HandleVisibility - Видимость ручки объекта'on' (по умолчанию) | 'callback' | 'off'Видимость дескриптора объекта, указанного как 'on', 'callback', или 'off'.
Это свойство управляет видимостью дескриптора объекта в списке нижестоящих элементов родительского объекта. Если дескриптор не виден в списке нижестоящих элементов родительского элемента, он не возвращается функциями, получающими дескрипторы путем поиска в иерархии объектов или запроса свойств дескриптора. Эти функции включают get, findobj, gca, gcf, gco, newplot, cla, clf, и close. HandleVisibility свойство также управляет видимостью дескриптора объекта в родительском рисунке CurrentObject собственность. Дескрипторы остаются действительными, даже если они не видны. При наличии доступа к объекту можно задать и получить его свойства и передать его любой функции, которая работает с объектами.
| Значение HandleVisibility | Описание |
|---|---|
'on' | Дескриптор объекта всегда виден. |
'callback' | Дескриптор объекта виден внутри обратных вызовов или функций, вызываемых обратными вызовами, но не внутри функций, вызываемых из командной строки. Этот параметр блокирует доступ к объекту в командной строке, но разрешает доступ к нему функциям обратного вызова. |
'off' | Дескриптор объекта всегда невидим. Этот параметр полезен для предотвращения непреднамеренных изменений пользовательского интерфейса другой функцией. Установите HandleVisibility кому 'off' для временного скрытия дескриптора во время выполнения этой функции. |
Установка корня графики ShowHiddenHandles свойство для 'on' чтобы сделать видимыми все маркеры, независимо от их HandleVisibility значение. Этот параметр не влияет на их HandleVisibility значения.
Type - Тип графического объекта'uitable'Это свойство доступно только для чтения.
Тип графического объекта, возвращаемого как 'uitable'.
Tag - Идентификатор объекта'' (по умолчанию) | символьный вектор | строковый скалярИдентификатор объекта, заданный как вектор символа или скаляр строки. Можно указать уникальный Tag для использования в качестве идентификатора объекта. При необходимости доступа к объекту в другом месте кода можно использовать findobj для поиска объекта на основе Tag значение.
UserData - Данные пользователя[] (по умолчанию) | массивПользовательские данные, указанные как любой массив. Определение UserData может быть полезен для совместного использования данных в приложениях. Дополнительные сведения см. в разделе Совместное использование данных среди обратных вызовов.
UIContextMenu свойство не рекомендуетсяНе рекомендуется начинать с R2020a
Начиная с R2020a, используя UIContextMenu свойство для назначения контекстного меню графическому объекту или компоненту пользовательского интерфейса не рекомендуется. Используйте ContextMenu вместо этого свойство. Значения свойств совпадают.
Нет планов по удалению поддержки для UIContextMenu собственность в это время. Тем не менее, UIContextMenu свойство больше не отображается в списке, возвращенном вызовом get в графическом объекте или компоненте пользовательского интерфейса.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.