exponenta event banner

выровнять

Выравнивание управляющих компонентов пользовательского интерфейса и объектов осей

    Используйте эту функцию только с GUIDE или с приложениями, созданными с помощью figure функция.

    Описание

    Выравнивание объектов по вертикали

    пример

    align(components,valign,spacing) по вертикали выравнивает указанные компоненты. Функция выравнивает левые стороны, центры или правые стороны объектов в зависимости от значения valignи регулирует расстояние по вертикали между объектами в зависимости от значения spacing. Например, align(components,'left','none') выравнивает левые кромки и не выполняет регулировку интервалов. Размер каждого объекта не изменяется.

    align(components,valign,'fixed',distance) изменяет расстояние по вертикали на фиксированное расстояние в точках.

    Выравнивание объектов по горизонтали

    align(components,spacing,halign) горизонтально выравнивает указанные компоненты. Функция выравнивает верхние стороны, средние или нижние стороны объектов в зависимости от значения halignи регулирует расстояние по горизонтали между объектами в зависимости от значения spacing. Например, align(components,'none','top') выравнивает верхние кромки и не корректирует интервалы. Размер каждого объекта не изменяется.

    пример

    align(components,'fixed',distance,halign) изменяет расстояние по вертикали на фиксированное расстояние в точках.

    Выравнивание перекрывающихся объектов

    пример

    align(components,valign,halign) выравнивает указанные объекты, перекрывая друг друга. Это эквивалентно выравниванию объектов по вертикали согласно valign и горизонтально в соответствии с halign. Например, align(components,'left','top') выравнивает верхние левые углы объектов в components.

    Возврат рассчитанных позиций

    пример

    positions = align(___) возвращает вычисленные позиции для указанных объектов в виде матрицы, если они выровнены, но не перемещают объекты. Каждая строка матричного выхода является позиционным вектором. Используйте эту опцию с любой из комбинаций входных аргументов в предыдущих синтаксисах.

    пример

    positions = align(cpositions,___) возвращает вычисленные позиции для объектов, позиции которых содержатся в cpositions если они выровнены, но положения объектов на рисунке не изменяются. Используйте эту опцию с любой из комбинаций ввода в предыдущих синтаксисах, заменяя components с cpositions.

    Примеры

    свернуть все

    Создайте фигуру, содержащую три кнопки, которые не полностью выровнены по вертикали.

    f = figure('Position',[100 100 350 200]);
    u1 = uicontrol(f,'Position',[10 80 60 30],'String','One');
    u2 = uicontrol(f,'Position',[50 50 60 30],'String','Two');
    u3 = uicontrol(f,'Position',[30 10 60 30],'String','Three');
    

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

    align([u1 u2 u3],'center','distribute');

    Создайте фигуру, содержащую три кнопки, которые не полностью выровнены по горизонтали.

    f = figure('Position',[100 100 350 200]);
    u1 = uicontrol('Parent',f,'Position',[43 50 75 30],'String','Yes');
    u2 = uicontrol('Parent',f,'Position',[143 75 75 30],'String','No');
    u3 = uicontrol('Parent',f,'Position',[233 40 75 30],'String','Cancel');

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

    align([u1 u2 u3],'fixed',10,'bottom');

    Создайте фигуру, содержащую кнопку и объект оси.

    f = figure('Position',[100 100 350 200]);
    ax = axes('Parent',f);
    btn = uicontrol('Parent',f,'String','Click');

    Совместите центр кнопки с центром осей. Второй аргумент, 'center', задает вертикальное выравнивание и третий аргумент, 'middle', задает трассу в плане.

    align([ax btn],'center','middle');

    Рассчитайте, где окажутся объекты, если выровнять их, но фактически не выровнять.

    Создайте фигуру, содержащую три невыровненные кнопки.

    f = figure('Position',[100 100 350 200]);
    u1 = uicontrol('Parent',f,'Position',[130 25 75 30],'String','Yes');
    u2 = uicontrol('Parent',f,'Position',[35 60 75 30],'String','No');
    u3 = uicontrol('Parent',f,'Position',[200 160 75 30],'String','Cancel');

    Прогнозирование результата выравнивания кнопок путем вызова align с выходным аргументом. Выходной сигнал выражается в виде матрицы, строки которой являются прогнозируемыми векторами положения кнопок.

    pos1 = align([u1 u2 u3],'right','fixed',3)
    pos1 =
    
       200    25    75    30
       200    59    75    30
       200    93    75    30

    В качестве альтернативы, пройти align векторы положения кнопок.

    pos2 = align([u1.Position;u2.Position;u3.Position],'right','fixed',3)
    pos2 =
    
       200    25    75    30
       200    58    75    30
       200    91    75    30

    В любом случае результирующие положения одинаковы. Ни один из вызовов функции не изменяет положение кнопок на рисунке.

    figure(f)

    Входные аргументы

    свернуть все

    Объекты для выравнивания, указанные как вектор UIControl или Axes объекты. Если вектор содержит объекты типов, отличных от UIControl или Axes, align функция игнорирует их. Выравнивание объектов не изменяет их абсолютных размеров.

    Выравнивание объектов по вертикали в components, указано как 'left', 'center', или 'right'

    valign

    Определение

    'left'

    Выровняйте по вертикали левые края объектов.

    'center'

    Центрируйте объекты по вертикали.

    'right'

    Выровняйте по вертикали правые края объектов.

    Все параметры трассы выравнивают объекты в ограничивающей рамке, которая окружает объекты. 'left' выравнивает левую кромку объектов с левой кромкой ограничивающей рамки, которая их содержит, и аналогично для 'right'. 'center' выравнивает центры объектов по центру ограничивающей рамки.

    Регулировка расстояния между объектами, указанная как 'none' или 'distribute'.

    • 'none' - не изменять интервал между объектами. При выравнивании объектов по вертикали не перемещайте их по горизонтали. При выравнивании объектов по горизонтали не перемещайте их по вертикали.

    • 'distribute' - Равномерное распределение объектов. При выравнивании объектов по вертикали равномерно распределите объекты по горизонтали между левым и правым краями ограничивающей рамки. При выравнивании объектов по горизонтали равномерно распределите объекты по вертикали между верхним и нижним краями ограничивающей рамки.

    Горизонтальное выравнивание объектов в components, указано как 'top', 'middle', или 'bottom'.

    halign

    Определение

    'top'

    Выровнять по горизонтали верхние края объектов.

    'middle'

    Центрирование объектов по горизонтали.

    'bottom'

    Выровнять по горизонтали нижние края объектов.

    Все параметры трассы выравнивают объекты в ограничивающей рамке, которая окружает объекты. 'top' выравнивает верхние края объектов по верхнему краю ограничивающей рамки, которая их содержит, и аналогично для 'bottom'. 'middle' выравнивает середины объектов по середине ограничивающей рамки.

    Фиксированное расстояние между объектами, указанное как скаляр в точках, где 72 точки равны 1 дюйму.

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

    См. также

    | |

    Представлен в R2012b