Пропустить навигацию.
Главная

Расстановка «мебели»

Пунктирная сетка, нарисованная на форме во время проектирования приложения играет вспомогательную роль. Ее узлы можно использовать для грубого выравнивания размеров и положения управляющих элементов на форме. Однако добиться высокой точности таким способом вряд ли удастся. Конечно, можно прибегнуть к заданию числовых значений координат точек привязки (свойства Left и Top каждого объекта) и их габаритов (свойства Width и Height). Но это очень утомительное занятие. В каждой визуальной среде предусмотрены команды главного меню и специальные диалоговые окна, упрощающие компоновку объектов на форме или в каком-либо другом контейнере.

Продемонстрируем эти возможности в среде VB. Разместим на форме три объекта типа окон ввода и умышленно сделаем произвольными их размеры и положение (рис. 2.16). Обратите внимание, что объект, помещенный на форму последним, остается выделенным — вокруг его границы расположены 8 характерных точек. За любую из них можно "ухватиться" мышкой и потянуть в соответствующую сторону для изменения размеров объекта.

IDE

Рис.2.16. Несколько объектов разной формы

Теперь зажмем клавишу <Shift> и щелчком мыши выделим объекты Text1 и Text2. Результат отражен на рис. 2.17. Обратите внимание на то, что объект, выделенный последним (Text2), окаймлен более жирными точками. Именно под него будут подстраиваться размеры и положения других выделенных объектов. Заходим в пункт главного меню Format (его команды показаны на рис. 2.18).

IDE

Рис.2.17. Результат выделения нескольких объектов

Команда Align переведет нас в подменю, управляющее выравниванием выделенных компонент (рис. 2.18).

IDE

Рис.2.18. Меню выравнивания границ

Верхняя часть подменю позволяет произвести выравнивание по вертикали, сделав у всех объектов одинаковой границу слева (Lefts), справа (Rights) или совместив их центры на одной линии (Centers). Следующий фрагмент подменю регулирует аналогичное выравнивание по горизонтали. У всех объектов может быть сделана на одном уровне верхняя граница (Tops), нижняя граница (Bottoms) или средняя линия (Middles) .И в том, и в другом случае выделенные объекты будут подстраиваться под границы компонента Text3. В нашем случае операция Align имеет смысл только для выравнивания объектов по вертикали. В случае выравнивания горизонтальных границ объекты Text1 и Text3 наползут друг на друга. При этом ничего не пропадет, мы можем зацепить любой из них и передвинуть в другое место. Результат выравнивания границ по вертикали отражен на рис. 2.19.

Команда Make Same Size позволяет подогнать габариты объектов Text1 и Text3 под размеры окна Text2. Причем допускается как раздельное выравнивание — только по ширине (Width) или высоте (Height) объектов, так и по обоим параметрам (Both) одновременно (рис. 2.20).

Команда Size to Grid устанавливает границы выделенных объектов по ближайшим линиям пунктирной сетки. Для группы объектов таких, например, как клавиши калькулятора важно установить не только одинаковые размеры, но и выдержать нужные интервалы между объектами по горизонтали и/или по вертикали. В этом случае помогут команды Horizontal Spacing и Vertical Spacing. В каждом из появляющихся подменю имеется возможность сделать интервалы между выделенными элементами равными (Make Equal), увеличить (Increase) или уменьшить (Decrease) текущие интервалы на один шаг сетки, сделать интервалы нулевыми (Remove). В последнем случае границы объектов сольются.

IDE

Рис.2.19. Результат выравнивания левых границ

Команда Center in Form позволяет расположить центры выделенных объектов либо на одной вертикали, либо на одной горизонтали, проходящей через центр формы.

К команде Order прибегают в тех случаях, когда несколько объектов перекрывают друг друга. Тогда кого-то можно выдвинуть вперед (Bring to Front) или отправить на задний план (Send to Back).

Команда Lock Controls закрепляет позиции выделенных элементов, после чего их перетаскивание с помощью мыши становится невозможным.

IDE

Рис.2.20. Меню выравнивания размеров

В системах BCB и Delphi аналогичные команды по выравниванию размеров и положения вынесены в меню Edit (рис. 2.21). Обратите внимание, что в отличие от VB, здесь нет четко выраженного ведущего элемента, под который подстраиваются остальные. Однако в визуальных средах фирмы Borland ведущим элементом всегда является первый выделенный.

При выбранном на рис. 2.21 расположении элементов произвести выравнивание границ (команда Align…) не удастся, т.к. один из элементов неизбежно наедет на другой. Если чуть-чуть сместить окно Edit2 вниз, то появится возможность подровнять левые или правые границы выделенных элементов.

IDE

Рис. 2.21. Средства размещения объектов в среде BCB

Выполнение команды Align приводит к появлению диалогового окна (рис. 2.22). Слова, как видите, почти те же самые, что и в системе VB. В пояснении нуждается только новая команда Scale, с помощью которой можно произвести масштабирование выделенных объектов. В появляющемся диалоговом окне вы можете изменить масштабирующий коэффициент, равный по умолчанию 100%.

IDE

Рис.2.22. Средства выравнивания границ