Менеджер по размещению управляющей сетки поведение
Компоненты пользовательского интерфейса положения менеджеров по размещению сетки вдоль строк и столбцов невидимой сетки, которая охватывает целую фигуру или контейнер в фигуре. Путем изменения значений свойств размещения сетки можно изменить определенные аспекты его поведения. Используйте запись через точку, чтобы относиться к конкретному объекту и свойству:
fig = uifigure; g = uigridlayout(fig); g.ColumnWidth = {100,'1x'};
ColumnWidth
ColumnWidth {'1x','1x'}
(значение по умолчанию) | массив ячеек | массив строк | числовой массивШирина столбца в виде массива ячеек, содержащего любой 'fit'
, числа или числа, соединенные с 'x'
'characters'. Можно задать любую комбинацию значений. Число элементов в массиве ячеек управляет количеством столбцов в сетке. Например, чтобы создать сетку с 4 столбцами, задайте массив ячеек 1 на 4. Ширина столбца может быть задана как массив строк или числовой массив, только если указанные элементы имеют тот же тип, как ["1x" "2x" "1x"]
или [100 200 50]
.
Существует три различных типов ширины столбцов:
Подходящая ширина — Задает 'fit'
. Ширина столбца автоматически настраивает, чтобы соответствовать ее содержимому. Для основанных на тексте компонентов, 'fit'
ширина настраивает со свойствами шрифта, чтобы показать целый текст. Для не основанные на тексте компоненты, 'fit'
ширина основана на размере по умолчанию компонента и других факторов. Используйте 'fit'
ширина, если вы хотите избежать жесткого кодирования ширина столбца, чтобы соответствовать компонентам, или если ваше приложение переводится в другой язык или работает на других платформах.
Фиксированная ширина в пикселях — Задает номер. Ширина столбца фиксируется в количестве пикселей, которые вы задаете. Когда родительский контейнер изменяет размер, ширина столбца не изменяется.
Переменная ширина — Задает номер, соединенный с 'x'
символ (например, '1x'
). Когда родительский контейнер изменяет размер, ширина столбца растет или уменьшается. Столбцы переменной ширины заполняют остающееся горизонтальное пространство, которое не используют столбцы фиксированной ширины. Номер вы соединяетесь с 'x'
символ является весом для деления остающегося пространства среди всех столбцов переменной ширины. Если сетка имеет только один столбец переменной ширины, то это использует все остающееся пространство независимо от номера. Если существует несколько столбцов переменной ширины, которые используют тот же номер, то они совместно используют пробел одинаково. В противном случае сумма пробела пропорциональна номеру.
Например, {'fit',200,'2x','1x'}
указывает, что ширина первого столбца измерена, чтобы соответствовать его содержимому, второй столбец фиксируется на уровне 200 пикселей, и последние два столбца совместно используют остающееся горизонтальное пространство. Третий столбец использует вдвое больше пространства как четвертый столбец.
Изменение определенных аспектов размещения может влиять на значение этого свойства. Например, добавление большего количества компонентов к полностью заполненной сетке изменяет размер сетки, чтобы вместить новые компоненты.
Изменение ColumnWidth
свойство на размещении сетки, которое уже содержит компоненты, не изменяет размещение компонентов. Например, при попытке динамически удалить столбец, который содержит компоненты, ColumnWidth
свойство не изменяется, пока вы не перемещаете те компоненты из того столбца.
RowHeight
— Высота строки{'1x','1x'}
(значение по умолчанию) | массив ячеек | массив строк | числовой массивВысота строки в виде массива ячеек, содержащего любой 'fit'
, числа или числа, соединенные с 'x'
'characters'. Можно задать любую комбинацию значений. Число элементов в массиве ячеек управляет количеством строк в сетке. Например, чтобы создать сетку, которая имеет 4 строки, задайте массив ячеек 1 на 4. Высота строки может быть задана как массив строк или числовой массив, только если указанные элементы имеют тот же тип, как ["1x" "2x" "1x"]
или [100 200 50]
.
Существует три различных типов высот строки:
Подходящая высота — Задает 'fit'
. Высота строки автоматически настраивает, чтобы соответствовать ее содержимому. Для основанных на тексте компонентов, 'fit'
высота настраивает со свойствами шрифта, чтобы показать целый текст. Для не основанные на тексте компоненты, 'fit'
высота основана на размере по умолчанию компонента и других факторов. Используйте 'fit'
высота, если вы хотите избежать жесткого кодирования высота строки, чтобы соответствовать компонентам, или если ваше приложение переводится в другой язык или работает на других платформах.
Фиксированная высота в пикселях — Задает номер. Высота строки фиксируется в количестве пикселей, которые вы задаете. Когда родительский контейнер изменяет размер, высота строки не изменяется.
Переменная высота — Задает номер, соединенный с 'x'
символ (например, '1x'
). Когда родительский контейнер изменяет размер, строка растет или уменьшается. Строки переменной высоты заполняют остающееся вертикальное пространство, которое не используют строки фиксированной высоты. Номер вы соединяетесь с 'x'
символ является весом для деления остающегося пространства среди всех строк переменной высоты. Если сетка имеет только одну строку переменной высоты, то это использует все остающееся пространство независимо от номера. Если существует несколько строк переменной высоты, которые используют тот же номер, то они совместно используют пробел одинаково. В противном случае сумма пробела пропорциональна номеру.
Например, {'fit',200,'2x','1x'}
указывает, что высота первой строки измерена, чтобы соответствовать ее содержимому, вторая строка фиксируется на уровне 200 пикселей, и последние две строки совместно используют остающееся вертикальное пространство. Третья строка использует вдвое больше пространства как четвертую строку.
Изменение определенных аспектов размещения может влиять на значение этого свойства. Например, добавление большего количества компонентов к полностью заполненной сетке изменяет размер сетки, чтобы вместить новые компоненты.
Изменение RowHeight
свойство на размещении сетки, которое уже содержит компоненты, не изменяет размещение компонентов. Например, при попытке динамически удалить строку, которая содержит компоненты, RowHeight
свойство не изменяется, пока вы не перемещаете те компоненты из той строки.
ColumnSpacing
— Интервал столбца
(значение по умолчанию) | номерИнтервал столбца в виде скалярного количества пикселей между смежными столбцами в сетке. Номер, который вы задаете, применяется ко всем столбцам.
RowSpacing
— Интервал строки
(значение по умолчанию) | номерИнтервал строки в виде скалярного количества пикселей между смежными строками в сетке. Номер, который вы задаете, применяется ко всем строкам.
Padding
— Дополнение
(значение по умолчанию) | [left bottom right top]
Дополнение вокруг внешнего периметра сетки в виде вектора из формы [left bottom right top]
. Элементы вектора описаны в приведенной ниже таблице.
Векторный элемент | Описание |
---|---|
left | Расстояние в пикселях между внутренним левым краем родительского контейнера и левым краем сетки. |
bottom | Расстояние в пикселях между внутренним базовым краем родительского контейнера и базовым краем сетки. |
right | Расстояние в пикселях между внутренним правым краем родительского контейнера и правым краем сетки. |
top | Расстояние в пикселях между внутренним верхним краем родительского контейнера и верхним краем сетки. Внутренний верхний край родительского контейнера запускается ниже всех художественных оформлений, таких как заголовки, метки вкладки или панели меню. |
BackgroundColor
BackgroundColor
(значение по умолчанию) | триплет 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' |
Visible
— Видимость дочерних элементов'on'
(значение по умолчанию) | логическое значение включения - выключенияВидимость дочерних элементов в виде 'on'
или 'off'
., или как числовой или логический 1
TRUE
) или 0
ложь
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState
.
Установите это свойство на 'off'
скрыть все дочерние компоненты в сетке и их потомках. Дочерние элементы и их потомки скрыты независимо от значения их Visible
свойства. Когда компоненты скрыты, можно получить и установить их свойства даже при том, что они не появляются в приложении.
Когда вы устанавливаете это свойство на 'on'
, дочерние элементы и их потомки отображаются только если их Visible
свойства также установлены в 'on'
.
Установка Visible
свойство на сетке не изменяет значения Visible
свойства его потомков.
Scrollable
— Способность прокрутить'off'
(значение по умолчанию) | логическое значение включения - выключенияСпособность прокрутить в виде 'off'
или 'on'
, или как числовой или логический 1
TRUE
) или 0
ложь
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState
.
Установка этого свойства к 'on'
позволяет прокрутить в менеджере по размещению сетки. Для того, чтобы прокрутить, эти условия нужно также соблюдать:
Сумма значений задана для 'RowHeight'
свойство менеджера по размещению сетки должно быть больше, чем высота родительского контейнера.
Сумма значений задана для 'ColumnWidth'
свойство менеджера по размещению сетки должно быть больше, чем ширина родительского контейнера.
По крайней мере одна строка или столбец менеджера по размещению сетки должны быть установлены в фиксированную пиксельную высоту или ширину.
Менеджер по размещению сетки должен содержать компоненты.
Определенные типы графиков и осей не поддерживают контейнеры с возможностью прокрутки. Однако можно поместить график или оси в панели без возможности прокрутки, и затем поместить панель в контейнер с возможностью прокрутки. Для получения дополнительной информации смотрите Графику Отображения в App Designer.
ContextMenu
— Контекстное менюGraphicsPlaceholder
массив (значение по умолчанию) | ContextMenu
объектКонтекстное меню в виде ContextMenu
объект. Используйте это свойство отобразить контекстное меню, когда вы щелкнете правой кнопкой по менеджеру по размещению сетки. Создайте контекстное меню с помощью uicontextmenu
функция.
Layout
— Параметры макетаLayoutOptions
массив (значение по умолчанию) | GridLayoutOptions
объектПараметры макета в виде GridLayoutOptions
объект. Это свойство задает опции для вложенного контейнера макетов сетки. Если размещение сетки не является дочерним элементом другого контейнера макетов сетки (например, это - дочерний элемент фигуры или панели), то это свойство пусто и не оказывает влияния. Однако, если размещение сетки является дочерним элементом другого размещения сетки, можно поместить ту дочернюю сетку в желаемую строку и столбец родительской сетки путем установки Row
и Column
свойства на GridLayoutOptions
объект.
Например, этот код вложенные множества grid2
в третьей строке и втором столбце grid1
.
grid1 = uigridlayout([4 3]); grid2 = uigridlayout(grid1); grid2.Layout.Row = 3; grid2.Layout.Column = 2;
Row
или Column
свойство как двухэлементный вектор. Например, эта команда охватывает grid2
по столбцам 2
через 3
из grid1
:grid2.Layout.Column = [2 3];
CreateFcn
— Функция создания''
(значение по умолчанию) | указатель на функцию | массив ячеек | вектор символовФункция создания объекта в виде одного из этих значений:
Указатель на функцию.
Массив ячеек, в котором первым элементом является указатель на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.
Для получения дополнительной информации об определении коллбэка как указатель на функцию, массив ячеек или вектор символов, видит Коллбэки Записи в App Designer.
Это свойство задает функцию обратного вызова, чтобы выполниться, когда MATLAB создает объект. MATLAB инициализирует все значения свойств прежде, чем выполнить CreateFcn
'callback'. Если вы не задаете CreateFcn
свойство, затем MATLAB выполняет функцию создания по умолчанию.
Установка CreateFcn
свойство на существующем компоненте не оказывает влияния.
Если вы задаете это свойство как указатель на функцию или массив ячеек, можно получить доступ к объекту, который создается с помощью первого аргумента функции обратного вызова. В противном случае используйте gcbo
функционируйте, чтобы получить доступ к объекту.
DeleteFcn
— Функция удаления''
(значение по умолчанию) | указатель на функцию | массив ячеек | вектор символовФункция удаления объекта в виде одного из этих значений:
Указатель на функцию.
Массив ячеек, в котором первым элементом является указатель на функцию. Последующие элементы массива ячеек являются аргументами, которые передаются в функцию обратного вызова.
Вектор символов, содержащий допустимое выражение MATLAB (не рекомендуемый). MATLAB оценивает это выражение в базовом рабочем пространстве.
Для получения дополнительной информации об определении коллбэка как указатель на функцию, массив ячеек или вектор символов, видит Коллбэки Записи в App Designer.
Это свойство задает функцию обратного вызова, чтобы выполниться, когда MATLAB удаляет объект. MATLAB выполняет DeleteFcn
коллбэк прежде, чем уничтожить свойства объекта. Если вы не задаете DeleteFcn
свойство, затем MATLAB выполняет функцию удаления по умолчанию.
Если вы задаете это свойство как указатель на функцию или массив ячеек, можно получить доступ к объекту, который удаляется с помощью первого аргумента функции обратного вызова. В противном случае используйте gcbo
функционируйте, чтобы получить доступ к объекту.
Interruptible
— Прерывание коллбэка'on'
(значение по умолчанию) | логическое значение включения - выключенияПрерывание коллбэка в виде 'on'
или 'off'
, или как числовой или логический 1
TRUE
) или 0
ложь
). Значение 'on'
эквивалентно true
, и 'off'
эквивалентно false
. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState
.
Это свойство определяет, может ли рабочий коллбэк быть прерван. Существует два состояния обратного вызова:
Выполняемый обратный вызов — это актуальный на данный момент обратный вызов.
Прерывающий обратный вызов — это обратный вызов, который пытается прервать текущий обратный вызов.
MATLAB определяет поведение прерывания коллбэка каждый раз, когда это выполняет команду, которая обрабатывает очередь коллбэка. Эти команды включают drawnow
, figure
, uifigure
, getframe
, waitfor
, и pause
.
Если рабочий коллбэк не содержит одну из этих команд, то никакое прерывание не происходит. MATLAB сначала закончил выполнять рабочий коллбэк, и позже выполняет прерывание обратного вызова.
Если рабочий коллбэк действительно содержит одну из этих команд, то Interruptible
свойство объекта, который владеет рабочим коллбэком, определяет, происходит ли прерывание:
Если значение Interruptible
'off'
, затем никакое прерывание не происходит. Вместо этого BusyAction
свойство объекта, который владеет прерыванием обратного вызова, определяет, отбрасывается ли прерывание обратного вызова или добавляется к очереди коллбэка.
Если значение Interruptible
'on'
, затем прерывание происходит. В следующий раз, когда MATLAB обрабатывает очередь коллбэка, он останавливает выполнение рабочего коллбэка и выполняет прерывание обратного вызова. После того, как прерывание обратного вызова завершается, MATLAB затем продолжает выполнять рабочий коллбэк.
Примечание
Прерывание и выполнение обратного вызова происходят по-разному в таких ситуациях:
Если прерыванием обратного вызова является DeleteFcn
CloseRequestFcn
, или SizeChangedFcn
коллбэк, затем прерывание происходит независимо от Interruptible
значение свойства.
Если рабочий коллбэк является выполняющимся в данным моментом waitfor
функция, затем прерывание происходит независимо от Interruptible
значение свойства.
Если прерывание обратного вызова принадлежит Timer
объект, затем коллбэк выполняется согласно расписанию независимо от Interruptible
значение свойства.
BusyAction
— Постановка в очередь коллбэка'queue'
(значение по умолчанию) | 'cancel'
Постановка в очередь коллбэка в виде 'queue'
или 'cancel'
. BusyAction
свойство определяет, как MATLAB обрабатывает выполнение прерываний обратного вызова. Существует два состояния обратного вызова:
Выполняемый обратный вызов — это актуальный на данный момент обратный вызов.
Прерывающий обратный вызов — это обратный вызов, который пытается прервать текущий обратный вызов.
BusyAction
свойство определяет поведение постановки в очередь коллбэка только, когда оба из этих условий соблюдают:
При этих условиях, BusyAction
свойство объекта, который владеет прерыванием обратного вызова, определяет, как MATLAB обрабатывает прерывание обратного вызова. Это возможные значения BusyAction
свойство:
'queue'
— Помещает прерывание обратного вызова в очередь, чтобы быть обработанным после рабочего выполнения концов коллбэка.
'cancel'
— Не выполняет прерывание обратного вызова.
BeingDeleted
— Состояние DeletionЭто свойство доступно только для чтения.
Состояние Deletion, возвращенное как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState
.
MATLAB устанавливает BeingDeleted
свойство к 'on'
когда DeleteFcn
коллбэк начинает выполнение. BeingDeleted
свойство остается установленным в 'on'
пока объект компонента больше не существует.
Проверяйте значение BeingDeleted
свойство проверить, что объект не собирается быть удаленным прежде, чем запросить или изменить его.
Parent
— Родительский контейнерFigure
объект (значение по умолчанию) | Panel
возразите | Tab
возразите | ButtonGroup
возразите | GridLayout
объектРодительский контейнер в виде Figure
объект создал использование uifigure
функция или один из ее дочерних контейнеров: Tab
Панель
Группа кнопок
, или GridLayout
. Если никакой контейнер не задан, MATLAB вызывает uifigure
функция, чтобы создать новый Figure
объект, который служит родительским контейнером.
Children
— Дочерние элементыGraphicsPlaceholderArray
| массив объектов компонента пользовательского интерфейсаДочерние элементы, возвращенные как массив объектов компонента пользовательского интерфейса. Используйте это свойство просмотреть список дочерних элементов или переупорядочить дочерние элементы путем установки свойства на сочетание себя. Вы не можете добавить или удалить дочерние элементы, использующие это свойство. Чтобы добавить дочерний элемент в этот список, установите Parent
свойство дочернего компонента пользовательского интерфейса.
Переупорядочение дочерних элементов не оказывает влияния на местоположение компонентов в сетке. Чтобы изменить местоположение компонента в сетке, установите ее Layout
свойство.
HandleVisibility
— Видимость указателя на объект'on'
(значение по умолчанию) | 'callback'
| 'off'
Видимость указателя на объект в виде 'on'
'callback'
, или 'off'
.
Это свойство контролирует видимость объекта в списке дочерних элементов его родителя. Когда объект не отображается в списке дочерних элементов его родителя, он не возвращается с помощью функций, которые получают объекты, просматривая иерархию объектов или запрашивая свойства. Эти функции включают get
, findobj
, clf
, и close
Объекты действительны, даже если они не видны. Если вы можете получить доступ к объекту, вы можете установить его, получить его свойства и передать его любой функции, которая работает с объектами.
Значение HandleVisibility | Описание |
---|---|
'on' | Объект всегда виден. |
'callback' | Объект отображается из коллбэков или функций, вызванных коллбэками, но не из функций, вызванных из командной строки. Эта опция блокирует доступ к объекту в командной строке, но позволяет обратным вызовам обращаться к нему. |
'off' | Объект невидим в любое время. Эта опция предназначена для предотвращения непреднамеренных изменений в пользовательском интерфейсе другой функцией. Установите HandleVisibility к 'off' временно скрыть объект во время выполнения этой функции. |
Type
— Тип графического объекта'uigridlayout'
Это свойство доступно только для чтения.
Тип графического объекта, возвращенного как 'uigridlayout'
.
Tag
— Идентификатор объекта''
(значение по умолчанию) | вектор символов | строковый скалярИдентификатор объекта в виде вектора символов или строкового скаляра. Можно задать уникальный Tag
значение, чтобы служить идентификатором для объекта. Когда вам нужен доступ к объекту в другом месте в вашем коде, можно использовать findobj
функционируйте, чтобы искать основанное на объектах на Tag
значение.
UserData
UserData []
(значение по умолчанию) | массивПользовательские данные в виде любого массива MATLAB. Например, можно задать скаляр, вектор, матрицу, массив ячеек, символьный массив, таблицу или структуру. Используйте это свойство хранить произвольные данные на объекте.
Если вы работаете в App Designer, создаете публичные или частные свойства в приложении, чтобы осуществлять обмен данными вместо того, чтобы использовать UserData
свойство. Для получения дополнительной информации смотрите, Осуществляют обмен данными В рамках Приложений App Designer.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.