Управляйте внешним видом и поведением компонента таблицы UI в figure
- основанные приложения
Свойства, перечисленные здесь, допустимы для таблиц в GUIDE или в приложениях, созданных с figure
функция. Если вы используете App Designer или uifigure
функционируйте, смотрите Свойства таблиц вместо этого. Для получения дополнительной информации см. Стратегии Миграции GUIDE.
Таблица компоненты пользовательского интерфейса показывает строки и столбцы данных в приложении. uitable
функция создает компонент таблицы UI и устанавливает любые необходимые свойства прежде, чем отобразить его. Путем изменения значений свойств можно изменить определенные аспекты его внешнего вида и поведения. Используйте запись через точку, чтобы относиться к конкретному объекту и свойству.
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
cellArray. Если вы задаете m
- n
массив, MATLAB изменяет размерность массива в вектор-столбец. Задайте многострочное имя столбца включением вертикальной наклонной черты (|
) в имени столбца. Например, значение 'Telephone|Number'
производит заголовок столбца с символом новой строки между словами "Telephone" и “Номером”.
Массив пустой ячейки ({}
) — Таблица не имеет никаких заголовков столбцов.
Пустая матрица ([]
) — Таблица не имеет никаких заголовков столбцов
Если количество столбцов в 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
cellArrayШирина столбцов таблицы в виде 'auto'
или как 1
- n
cellArray.
Каждый столбец в массиве ячеек соответствует столбцу в таблице. Значения находятся в пиксельных модулях. Если вы задаете 'auto'
, затем MATLAB вычисляет ширину столбца автоматически с помощью нескольких факторов, одним из которых является ColumnName
значение свойства.
Можно объединить фиксированные ширины столбца и 'auto'
ширина столбцов в массиве ячеек, или можно задать одно значение 'auto'
сделать всю ширину столбцов автоматической.
Выбор Auto Width в Редакторе Свойств таблицы оказывает то же влияние как установка 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
массив — Этот массив задает, какие столбцы доступны для редактирования. Значение 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' | Отобразите выровненное по правому знаку значение, эквивалентное отображению Командного окна для числовых данных. Если элемент в Чтобы отредактировать ячейку, пользователь может ввести любой текст. Если пользователь вводит текст, который представляет константу, такую как |
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 функция. | Таблица показывает логические значения как флажки. |
Например, в следующей таблице, первый столбец (XData) оставляют выровненным по ширине потому что ColumnFormat
значением для того столбца является 'char'
.
RowName
— Имена заголовка строки'numbered'
(значение по умолчанию) | n
- 1
массив ячеек из символьных векторов | n
- 1
категориальный массив | массив пустой ячейки ({}
) | ...Заголовок строки называет в виде одного из этих значений:
'numbered'
— Заголовки строк являются порядковыми номерами, которые запускаются в 1
.
Массив ячеек из символьных векторов или категориальный массив — Каждый элемент массива становятся именем строки. Имена строки ограничиваются одной линией текста. Если вы задаете 1
- n
массив ячеек, MATLAB хранит и возвращает значение как n
- 1
cellArray. Если вы задаете m
- n
массив, MATLAB изменяет размерность массива в вектор-столбец.
Массив пустой ячейки ({}
) — Таблица не имеет никаких заголовков строк.
Пустая матрица ([]
) — Таблица не имеет никаких заголовков строк
Если количество строк в Data
массив свойства не совпадает с числом элементов в RowName
массив, затем количество строк в получившейся таблице является большими из этих двух значений.
Пример: t = uitable('RowName',{'Name';'Number'},'Data',{'Bob';5})
Пример: t = uitable('RowName',{'Name';[]},'Data',{'Bob';5})
RearrangeableColumns
— Способность перестроить столбцы таблицы'off'
(значение по умолчанию) | логическое значение включения - выключенияСпособность перестроить столбцы таблицы в виде 'off'
или 'on'
, или как числовой или логический 1
TRUE
) или 0
ложь
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState
.
Это свойство обеспечивает способ позволить пользователям переупорядочить столбцы таблицы (но не метки) путем перетаскивания заголовков столбцов.
Примечание
Реорганизация столбцов таблицы в пользовательском интерфейсе не влияет на столбцы в Data
массив свойства.
FontName
FontName 'FixedWidth'
Название шрифта в виде системы поддержало название шрифта или 'FixedWidth'
Шрифт по умолчанию зависит от конкретной операционной системы и локали.
Чтобы использовать шрифт фиксированной ширины, который выглядит хорошим в любой локали, задайте 'FixedWidth'
. Фактический используемый шрифт фиксированной ширины зависит от FixedWidthFontName
свойство корневого объекта. Изменение FixedWidthFontName
свойство заставляет незамедлительное обновление отображения использовать новый шрифт.
Пример: 'Arial'
FontSize
'FontSize' Размер шрифта, заданный в виде положительного числа. FontUnits
свойство задает модули. Размер по умолчанию системно-зависим.
Пример: 12
Пример: 12.5
FontWeight
FontWeight 'normal'
(значение по умолчанию) | 'bold'
Толщина шрифта в виде значения из следующей таблицы.
'normal'
— Вес по умолчанию, как задано конкретным шрифтом
'bold'
— Более толстые символьные основы, чем нормальный
MATLAB использует FontWeight
свойство выбрать шрифт от доступных в вашей системе. Не все шрифты имеют полужирное начертание шрифта. Поэтому установка жирного шрифта все еще привести к установке обычного шрифта.
Примечание
'light'
и 'demi'
значения толщины шрифта были удалены в R2014b. Если вы задаете любое из этих значений, результатом является обычная толщина шрифта.
FontAngle
FontAngle 'normal'
(значение по умолчанию) | 'italic'
Угол шрифта в виде 'normal'
или 'italic'
. MATLAB использует это свойство выбрать шрифт от доступных в вашей системе. Установка этого свойства к 'italic'
выбирает наклонную версию шрифта, если это доступно в вашей системе.
Примечание
'oblique'
значение было удалено. Используйте 'italic'
вместо этого.
FontUnits
'FontUnits' 'points'
(значение по умолчанию) | 'normalized'
| 'inches'
| 'centimeters'
| 'pixels'
Модули шрифта в виде одного из значений из этой таблицы.
Модульное значение | Описание |
---|---|
'points' | 'points'. Одна точка является 1/72-й из дюйма. |
'normalized' | Нормированные значения для определения размера шрифта как часть высоты. Когда вы изменяете размер компонента пользовательского интерфейса, MATLAB масштабирует отображенный шрифт, чтобы обеспечить ту часть. |
'inches' | 'inches'. |
'centimeters' | 'centimeters'. |
'pixels' | 'pixels'. Начиная с версии R2015b, значения размеров в пикселях не зависят от вашего системного разрешения в системах Windows® и Macintosh:
В системах Linux® размер пикселя определяется вашим системным разрешением. |
Visible
— Состояние видимости'on'
(значение по умолчанию) | логическое значение включения - выключенияСостояние видимости в виде 'on'
или 'off'
, или как числовой или логический 1
TRUE
) или 0
ложь
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState
.
'on'
— Отобразите объект.
'off'
— Скройте объект, не удаляя его. Все еще можно получить доступ к свойствам невидимого компонента пользовательского интерфейса.
Чтобы заставить ваше приложение запуститься быстрее, установите Visible
свойство к 'off'
для всех компонентов пользовательского интерфейса, которые не должны появляться при запуске.
Enable
— Рабочее состояние таблицы'on'
(значение по умолчанию) | 'inactive'
| 'off'
Рабочее состояние таблицы в виде 'on'
off
, или 'inactive'
. Enable
свойство управляет, отвечает ли компонент пользовательского интерфейса на нажатия кнопок. Существует три возможных значения:
'on'
– Компонент пользовательского интерфейса является операционным.
'off'
– Компонент пользовательского интерфейса не является операционным и появляется grayed.
'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'
(значение по умолчанию) | логическое значение включения - выключения
Примечание
Поведение Selected
свойство изменилось в R2014b, и это не рекомендуется. Это больше не оказывает влияния на объекты этого типа. Это свойство может быть удалено в будущем релизе.
SelectionHighlight
— Отображение маркеров выделения (не рекомендуемый)'on'
(значение по умолчанию) | логическое значение включения - выключения
Примечание
Поведение SelectionHighlight
свойство изменилось в R2014b, и это не рекомендуется. Это больше не оказывает влияния на объекты этого типа. Это свойство может быть удалено в будущем релизе.
ForegroundColor
— Цвет текста ячейки
(значение по умолчанию) | триплет 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
BackgroundColor
(значение по умолчанию) | триплет RGB | m-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'
, или как числовой или логический 1
TRUE
) или 0
ложь
). Значение '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
значения относительно drawable area родительского контейнера. Область векторной и растровой графики является областью в границах контейнера и не включает область, занятую заголовком. Если родительский контейнер является фигурой, то область векторной и растровой графики также исключает панель меню и панель инструментов.
Используйте 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' (значение по умолчанию) | 'pixels'. Начиная в R2015b, расстояния в пикселях независимы от вашего системного разрешения по системам Макинтоша и Windows:
В системах Linux размер пикселя определяется вашим системным разрешением. |
'normalized' | Эти модули нормированы относительно родительского контейнера. Нижний левый угол контейнера сопоставляет с (0,0) и верхний правый угол сопоставляет с (1,1) . |
'inches' | 'inches'. |
'centimeters' | 'centimeters'. |
'points' | 'points'. Одна точка равняется 1/72-й из дюйма. |
'characters' | Эти модули основаны на шрифте uicontrol по умолчанию графического корневого объекта:
Чтобы получить доступ к шрифту 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
or1+1
, converttonum
функция устанавливает значение ячейки таблицы к числовому представлению входа. Поскольку нет никакой проверки ошибок в converttonum
функция, недопустимые выражения возвращают ошибку, и новое значение ячейки таблицы становится NaN
.
CellSelectionCallback
— Функция обратного вызова выбора ячейкиФункция обратного вызова выбора ячейки в виде одного из этих значений:
Указатель на функцию.
Массив ячеек, в котором первый элемент является указателем на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.
Эта функция обратного вызова выполняется, когда пользователь выполняет одно из следующих действий:
Подсвечивает ячейку данных (не ячейка строки или ячейка заголовка столбца) путем нажатия на него или навигации к нему с клавишей со стрелкой
Выбирает прямоугольную группу ячеек путем удержания клавиши Shift при выборе ячеек
Отменяет выбор ячейки Ctrl - нажатие на него
Если вы задаете это свойство как указатель на функцию (или массив ячеек, содержащий указатель на функцию), MATLAB передает CellSelectionChangeData
объект, содержащий данные о событиях в качестве второго аргумента к функции обратного вызова. Этот объект содержит свойства, перечисленные в следующей таблице.
Свойство | Описание |
---|---|
Indices | массив n-2, содержащий индексы строки и столбца ячейки пользователь, выбран. |
Source | Объект таблицы, который выполняет |
EventName |
|
ButtonDownFcn
— Функция обратного вызова нажатия кнопки''
(значение по умолчанию) | указатель на функцию | массив ячеек | вектор символовФункция обратного вызова нажатия кнопки в виде одного из этих значений:
Указатель на функцию.
Массив ячеек, в котором первый элемент является указателем на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.
ButtonDownFcn
коллбэк является функцией, которая выполняется, когда пользователь щелкает кнопкой мыши по компоненту пользовательского интерфейса. Коллбэк выполняется в следующих ситуациях:
Пользователь щелкает правой кнопкой по таблице и Enable
свойство установлено в 'on'
.
Пользователь щелкает правой кнопкой или щелкает левой кнопкой по таблице и Enable
свойство установлено в 'off'
или 'inactive'
.
KeyPressFcn
— Функция обратного вызова нажатия клавиши''
(значение по умолчанию) | указатель на функцию | массив ячеек | вектор символовФункция обратного вызова нажатия клавиши в виде одного из этих значений:
Указатель на функцию.
Массив ячеек, в котором первый элемент является указателем на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.
Эта функция обратного вызова выполняется когда Table
объект фокусируется, и пользователь нажимает клавишу. Если вы не задаете функцию для этого свойства, MATLAB передает нажатия клавиш родительской фигуре. Повторные нажатия клавиш сохраняют особое внимание Table
объект и функция выполняются с каждым нажатием клавиши. Если пользователь нажимает несколько клавиш приблизительно в то же время, MATLAB обнаруживает нажатие клавиши для последней нажатой клавиши.
Если вы задаете это свойство как указатель на функцию (или массив ячеек, содержащий указатель на функцию), MATLAB передает объект, содержащий данные о коллбэке в качестве второго аргумента к функции обратного вызова. Этот объект содержит свойства, описанные в следующей таблице. Можно получить доступ к этим свойствам в функции обратного вызова с помощью записи через точку.
Свойство | Описание | Примеры: | |||
---|---|---|---|---|---|
a | = | Сдвиг | Shift-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 | = | Сдвиг | Shift-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
'callback'. Если вы не задаете CreateFcn
свойство, затем MATLAB выполняет функцию создания по умолчанию.
Используйте gcbo
функционируйте в своем CreateFcn
код, чтобы получить объект компонента, который создается.
Установка CreateFcn
свойство на существующем объекте компонента не оказывает влияния.
DeleteFcn
— Функция удаления компонента''
(значение по умолчанию) | указатель на функцию | массив ячеек | вектор символовФункция удаления компонента, заданная в качестве одного из следующих значений:
Указатель на функцию.
Массив ячеек, в котором первый элемент является указателем на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.
DeleteFcn
свойство задает функцию обратного вызова, чтобы выполниться, когда MATLAB удаляет компонент (например, когда пользователь закрывает окно). MATLAB выполняет DeleteFcn
коллбэк прежде, чем уничтожить свойства объекта компонента. Если вы не задаете DeleteFcn
свойство, затем MATLAB выполняет функцию удаления по умолчанию.
Используйте gcbo
функционируйте в своем DeleteFcn
код, чтобы получить объект компонента, который удаляется.
Interruptible
— Прерывание коллбэка'on'
(значение по умолчанию) | логические значения включения - выключенияПрерывание коллбэка в виде 'on'
или 'off'
, или как числовой или логический 1
TRUE
) или 0
ложь
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState
.
Interruptible
свойство определяет, может ли рабочий коллбэк быть прерван. Существует два состояния обратного вызова:
Выполняемый обратный вызов — это актуальный на данный момент обратный вызов.
Прерывающий обратный вызов — это обратный вызов, который пытается прервать текущий обратный вызов.
Каждый раз, когда MATLAB вызывает обратный вызов, этот обратный вызов пытается прервать текущий обратный вызов (если он существует). Interruptible
свойство объекта, владеющего рабочим коллбэком, определяет, позволено ли прерывание:
Значение 'on'
позволяет другим коллбэкам прерывать коллбэки объекта. Прерывание происходит на следующем этапе, где MATLAB обрабатывает очередь, такой как тогда, когда существует a 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
— Состояние DeletionЭто свойство доступно только для чтения.
Состояние Deletion, возвращенное как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState
.
MATLAB устанавливает BeingDeleted
свойство к 'on'
когда DeleteFcn
коллбэк начинает выполнение. BeingDeleted
свойство остается установленным в 'on'
пока объект компонента больше не существует.
Проверяйте значение BeingDeleted
свойство проверить, что объект не собирается быть удаленным прежде, чем запросить или изменить его.
HitTest
— Способность стать текущим объектом'on'
(значение по умолчанию) | логическое значение включения - выключенияСпособность стать текущим объектом в виде 'on'
или 'off'
, или как числовой или логический 1
TRUE
) или 0
ложь
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState
.
'on'
— Устанавливает текущий объект на Table
когда пользователь кликает по компоненту в запущенном приложении. Оба CurrentObject
свойство Figure
и gco
функциональный возврат Table
как текущий объект.
'off'
— Устанавливает текущий объект быть самым близким предком Table
чей HitTest
'on'
когда пользователь кликает по компоненту в запущенном приложении.
Parent
— Родительский объектFigure
| Panel
| ButtonGroup
| Tab
Родительский объект в виде Figure
Панель
Группа кнопок
, или Tab
объект. Используйте это свойство задать родительский контейнер при создании компонента пользовательского интерфейса или переместить существующий компонент пользовательского интерфейса в различный родительский контейнер.
Children
Таблица
дочерние элементы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 []
(значение по умолчанию) | массивПользовательские данные в виде любого массива. Определение UserData
может быть полезно для обмена данными в рамках приложений. Смотрите Осуществляют обмен данными Среди Коллбэков для получения дополнительной информации.
UIContextMenu
свойство не рекомендуетсяНе рекомендуемый запуск в R2020a
Запуск в R2020a, использование UIContextMenu
свойство присвоить контекстное меню графическому объекту или компоненту пользовательского интерфейса не рекомендуется. Используйте ContextMenu
свойство вместо этого. Значения свойств являются тем же самым.
Нет никаких планов удалить поддержку UIContextMenu
свойство в это время. Однако UIContextMenu
свойство больше не появляется в списке, возвращенном путем вызова get
функция на графическом объекте или компоненте пользовательского интерфейса.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.