выравнивание

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

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

Синтаксис

align(HandleList,'HorizontalAlignment','VerticalAlignment')
Positions = align(HandleList, 'HorizontalAlignment', 'VerticalAlignment')
Positions = align(CurPositions, 'HorizontalAlignment', 'VerticalAlignment')

Описание

align(HandleList,'HorizontalAlignment','VerticalAlignment') выравнивает uicontrol и объекты axes в HandleList, векторе указателей, согласно опциям HorizontalAlignment и VerticalAlignment. Следующие таблицы показывают возможные значения для HorizontalAlignment и VerticalAlignment.

HorizontalAlignment

Определение

'None'

Никакое выравнивание по горизонтали

'Left'

Выравнивает левые края объектов с левым краем ограничительной рамки, которая заключает объекты

'Center'

Сдвиги возражают, чтобы сосредоточить их положения к среднему значению экстремального x - значения группы

'Right'

Выравнивает правые края объектов с правым краем ограничительной рамки, которая заключает объекты

'Distribute'

Компенсирует x - расстояния между всеми объектами в промежутке экстремальных x-значений

'Fixed'

Пробелы возражают, чтобы иметь конкретное количество точек между ними в x - направление

VerticalAlignment

Определение

'None'

Никакое выравнивание по вертикали

'Top'

Выравнивает верхние края объектов с верхним краем ограничительной рамки, которая заключает объекты

'Middle'

Сдвиги возражают, чтобы сосредоточить их положения к среднему значению экстремального y - значения группы

'Bottom'

Выравнивает базовые края объектов с базовым краем ограничительной рамки, которая заключает объекты

'Distribute'

Компенсирует y - расстояния между всеми объектами в промежутке экстремального y - значения

'Fixed'

Пробелы возражают, чтобы иметь конкретное количество точек между ними в y - направление

Выравнивание объектов не изменяет их абсолютные размеры. Все опции выравнивания выравнивают объекты в ограничительной рамке, которая заключает объекты. Distribute и Fixed выравнивают объекты к левой нижней части ограничительной рамки. Distribute равномерно распределяет объекты, в то время как Fixed распределяет объекты с фиксированным расстоянием (в точках) между ними. Когда вы задаете и горизонтальное и вертикальное расстояние вместе, ключевые слова, 'HorizontalAlignment' и 'VerticalAlignment' не необходимы.

Если вы используете Fixed для HorizontalAlignment или VerticalAlignment, необходимо также задать расстояние в точках, где 72 точки равняются 1 дюйму. Например:

align(HandleList,'Fixed',Distance,'VerticalAlignment')

распределяет заданные компоненты точки Distance горизонтально и выравнивает их вертикально, как задано.

align(HandleList,'HorizontalAlignment','Fixed',Distance)

выравнивает заданные компоненты горизонтально, как задано и распределяет их точки Distance вертикально.

align(HandleList,'Fixed',HorizontalDistance,...
      'Fixed',VerticalDistance)

распределяет заданные компоненты точки HorizontalDistance горизонтально и распределяет их точки VerticalDistance вертикально.

Positions = align(HandleList, 'HorizontalAlignment', 'VerticalAlignment') возвращает обновленные положения для заданных объектов как вектор векторов Position. Положение объектов на фигуре не изменяется.

Positions = align(CurPositions, 'HorizontalAlignment', 'VerticalAlignment') возвращает обновленные положения для объектов, положения которых содержатся в CurPositions, где CurPositions является вектором векторов Position. Положение объектов на фигуре не изменяется.

Примеры

свернуть все

Создайте окно UI, содержащее три кнопки, которые являются примерно подряд.

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');

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

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

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

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','Fixed',7);

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

| |