- Любовные романы
- Фантастика и фэнтези
- Ненаучная фантастика
- Ироническое фэнтези
- Научная Фантастика
- Фэнтези
- Ужасы и Мистика
- Боевая фантастика
- Альтернативная история
- Космическая фантастика
- Попаданцы
- Юмористическая фантастика
- Героическая фантастика
- Детективная фантастика
- Социально-психологическая
- Боевое фэнтези
- Русское фэнтези
- Киберпанк
- Романтическая фантастика
- Городская фантастика
- Технофэнтези
- Мистика
- Разная фантастика
- Иностранное фэнтези
- Историческое фэнтези
- LitRPG
- Эпическая фантастика
- Зарубежная фантастика
- Городское фентези
- Космоопера
- Разное фэнтези
- Книги магов
- Любовное фэнтези
- Постапокалипсис
- Бизнес
- Историческая фантастика
- Социально-философская фантастика
- Сказочная фантастика
- Стимпанк
- Романтическое фэнтези
- Ироническая фантастика
- Детективы и Триллеры
- Проза
- Юмор
- Феерия
- Новелла
- Русская классическая проза
- Современная проза
- Повести
- Контркультура
- Русская современная проза
- Историческая проза
- Проза
- Классическая проза
- Советская классическая проза
- О войне
- Зарубежная современная проза
- Рассказы
- Зарубежная классика
- Очерки
- Антисоветская литература
- Магический реализм
- Разное
- Сентиментальная проза
- Афоризмы
- Эссе
- Эпистолярная проза
- Семейный роман/Семейная сага
- Поэзия, Драматургия
- Приключения
- Детская литература
- Загадки
- Книга-игра
- Детская проза
- Детские приключения
- Сказка
- Прочая детская литература
- Детская фантастика
- Детские стихи
- Детская образовательная литература
- Детские остросюжетные
- Учебная литература
- Зарубежные детские книги
- Детский фольклор
- Буквари
- Книги для подростков
- Школьные учебники
- Внеклассное чтение
- Книги для дошкольников
- Детская познавательная и развивающая литература
- Детские детективы
- Домоводство, Дом и семья
- Юмор
- Документальные книги
- Бизнес
- Работа с клиентами
- Тайм-менеджмент
- Кадровый менеджмент
- Экономика
- Менеджмент и кадры
- Управление, подбор персонала
- О бизнесе популярно
- Интернет-бизнес
- Личные финансы
- Делопроизводство, офис
- Маркетинг, PR, реклама
- Поиск работы
- Бизнес
- Банковское дело
- Малый бизнес
- Ценные бумаги и инвестиции
- Краткое содержание
- Бухучет и аудит
- Ораторское искусство / риторика
- Корпоративная культура, бизнес
- Финансы
- Государственное и муниципальное управление
- Менеджмент
- Зарубежная деловая литература
- Продажи
- Переговоры
- Личная эффективность
- Торговля
- Научные и научно-популярные книги
- Биофизика
- География
- Экология
- Биохимия
- Рефераты
- Культурология
- Техническая литература
- История
- Психология
- Медицина
- Прочая научная литература
- Юриспруденция
- Биология
- Политика
- Литературоведение
- Религиоведение
- Научпоп
- Психология, личное
- Математика
- Психотерапия
- Социология
- Воспитание детей, педагогика
- Языкознание
- Беременность, ожидание детей
- Транспорт, военная техника
- Детская психология
- Науки: разное
- Педагогика
- Зарубежная психология
- Иностранные языки
- Филология
- Радиотехника
- Деловая литература
- Физика
- Альтернативная медицина
- Химия
- Государство и право
- Обществознание
- Образовательная литература
- Учебники
- Зоология
- Архитектура
- Науки о космосе
- Ботаника
- Астрология
- Ветеринария
- История Европы
- География
- Зарубежная публицистика
- О животных
- Шпаргалки
- Разная литература
- Зарубежная литература о культуре и искусстве
- Пословицы, поговорки
- Боевые искусства
- Прочее
- Периодические издания
- Фанфик
- Военное
- Цитаты из афоризмов
- Гиды, путеводители
- Литература 19 века
- Зарубежная образовательная литература
- Военная история
- Кино
- Современная литература
- Военная техника, оружие
- Культура и искусство
- Музыка, музыканты
- Газеты и журналы
- Современная зарубежная литература
- Визуальные искусства
- Отраслевые издания
- Шахматы
- Недвижимость
- Великолепные истории
- Музыка, танцы
- Авто и ПДД
- Изобразительное искусство, фотография
- Истории из жизни
- Готические новеллы
- Начинающие авторы
- Спецслужбы
- Подростковая литература
- Зарубежная прикладная литература
- Религия и духовность
- Старинная литература
- Справочная литература
- Компьютеры и Интернет
- Блог
VBA для чайников - Стив Каммингс
Шрифт:
Интервал:
Закладка:
Один или несколько элементов управления можно удалить, не помещая их в буфер обмена, если нажать клавишу <Delete> или выбрать Edit=Delete. Обратите внимание на то, что нажатие клавиши <Backspace> в данном случае не работает.
Можно выделить группу элементов управления, а затем перемещать их, менять размеры, вырезать или применять иные команды форматирования как к одному целому. Очень удобно таким образом одновременно устанавливать одинаковые значения общим свойствам элементов управления.
Для выделения сразу нескольких элементов управления используйте следующие приемы.
* Щелкните на пиктограмме стрелки в панели Toolbox и, перетаскивая указатель мыши, охватите прямоугольником выделения те элементы управления, которые нужно включить в группу выделенных. Если в прямоугольник выделения попадет хотя бы часть элемента управления, этот элемент управления окажется в группе выделенных.
* Щелкните на первом элементе управления в группе, а затем, нажав и удерживая клавишу <Shift>, щелкните на элементе управления в противоположной части области выделения. В результате будут выделены все элементы управления, находящиеся между теми двумя, на которых вы щелкали.
* Щелкните на элементе управления, удерживая при этом нажатой клавишу <Ctrl>. Элемент управления будет добавлен к группе выделенных или будет исключен из нее в зависимости от того, был во время щелчка элемент управления выделен или нет.
Выделив группу элементов управления, можно перемещать их, менять размеры, вырезать или применять иные команды форматирования как к одному целому. Выделение группы элементов управления очень ускоряет работу, когда нужно установить одинаковые значения общим свойствам нескольких элементов управления.
Обычно можно отменить результаты последней команды форматирования с помощью команды Undo (Отмена), вызываемой нажатием клавиш <Ctrl+Z>. Однако отмена не действует после изменения размеров формы, а также для изменений, выполненных в окне свойств.
Сетка - это разметка из вертикальных и горизонтальных линий, "нанесенных" на формы. Сетка выполняет следующие функции.
* Визуализация направляющих, вдоль которых размешаются элементы управления с помощью мыши. Направляющие линии проходят через точки, на которые вы наверное, обратили внимание при работе с формами.
* Автоматическое выравнивание элементов управления по линиям сетки при перемещении или изменении размеров элементов управления с помощью мыши. Независимо от вашего желания, при перемещении (или изменении размеров) элементов управления с помощью мыши стороны элементов управления "прилипают" к линиям сетки. Хотя это и ограничивает вас в гибкости, зато обеспечивает заметную согласованность при разметке формы.
Эти две функции работают независимо. Можно, например, сделать сетку невидимой, но оставить в силе автоматическое выравнивание или наоборот.
Чтобы установить параметры сетки, выберите Tools= Options из меню. В появившемся диалоговом окне Options (Параметры) щелкните на вкладке General (Общие), чтобы добраться до элементов управления, с помощью которых задаются параметры, о которых идет речь (рис. 10.5).
Рис. /0.5. Шаг сетки задается на вкладке General в диалоговом окне Options
В верхней левой части этого диалогового окна вы найдете несколько параметров, относящихся к сетке.
* Show Grid (Показывать сетку). Снимите этот флажок, если хотите, чтобы точек сетки на форме не стало. Состояние этого параметра не влияет на автоматическое выравни1 вание по линиям сетки.
* Width (Ширина) и Height (Высота). С помощью значений в этих полях текста задается шаг (т.е. расстояние между точками) сетки в вертикальном и горизонтальном направлениях соответственно.
* Align Controls to Grid (Выравнивать элементы управления по линиям сетки). Когда этот флажок отмечен, работает функция "прилипания" к линиям сетки. Сняв этот флажок, вы получите полную свободу в позиционировании и изменении размеров элементов управления. И повторяю, сетка может оставаться видимой, когда функция автоматического выравнивания отключена.
Форматирование элементов управления
В большинстве своем люди питают склонность к таким неосязаемым свойствам, как симметрия, согласованность и аккуратность. И вы, я думаю, хотели бы помочь пользователю сосредоточиться на тех задачах, которые предстоит выполнить, а не собираетесь вызвать у него раздражение беспорядочным нагромождением элементов управления.
К счастью, в VBA есть все средства для создания хорошо организованных форм. Причем, хотя для этого все еще нужна некоторая ручная работа, средства автоматического форматирования VBA позволяют автоматизировать значительную часть процесса.
Команды, которые относятся к размещению и позиционированию элементов управления в форме, находятся в меню Format (Формат) редактора
Visual Basic (рис. 10.6). Хорошее предварительное знакомство с пунктами этого меню и его многочисленных подменю сослужит вам хорошую службу во время проектирования формы.
Использование панели инструментов UserForm
При работе с формами в редакторе Visual Basic очень удобной оказывается панель инструментов UserForm. Если эта панель инструментов на экране не видна, отобразите ее, щелкнув правой кнопкой мыши в любой из видимых панелей инструментов и выбрав UserForm в появившемся меню. На рис. 10.7 панель инструментов UserForm показана как свободно перемещаемая панель.
Рис. 10,7. Панель инструментов UserForm предлагает кнопки для часто используемых команд форматирований элементов управления
Кнопки панели инструментов UserForm соответствуют пунктам меню Format. Некоторые из этих кнопок комбинированные - справа от них видны небольшие направленные вниз стрелки, раскрывающиеся в списки опций. Если щелкнуть на главной части такой кнопки.
VBA немедленно активизирует опцию, выбранную последней. Чтобы выбрать другую опцию, щелкните на маленькой стрелке и выберите опцию из появившегося списка.
Выбрать с помощью мыши сразу несколько элементов управления просто, но этот метод оказывается не идеальным в том случае, когда приходится постоянно работать с одним и тем же набором элементов управления как с отдельной единицей. Объединив все эти элементы управления в группу, вы избавляетесь от необходимости выбирать все эти элементы управления каждый раз, когда приходится с ними что-то делать, и тем самым исключаете возможные при таком выборе ошибки. На рис. 10.8 показаны примеры сгруппированных наборов элементов управления.
Рис. 10.8. Несколько групп элементов управления. Обратите внимание, что прямоугольники выделения охватывают все элементы управления в группе
Создать группу несложно.
1. Выделите все элементы управления, которые должны войти в группу.
2. Щелкните на кнопке Group (Сгруппировать) панели инструментов UserForm или выберите Format=Group из меню.
Группировка позволяет применять команды форматирования сразу ко всем элементам группы одновременно. Например, если необходимо выровнять расстояния между тремя рядами кнопок, сгруппируйте кнопки по рядам, выделите все три образовавшиеся группы и выберите Horizontal Spacing=Make Equal из меню (подробнее об этом - ниже в разделе "Выравнивание горизонтальных и вертикальных расстояний").
Хотя лучше всего не перекрывать одни элементы управления другими, это бывает необходимым, когда содержимое формы должно меняться в процессе выполнения программы.
При этом, если правильно установить значения свойства Visible элементов управления, программа в каждый конкретный момент времени может оставлять невидимыми все перекрывающиеся элементы управления, кроме одного.
Но в окне редактора Visual Basic все элементы управления всегда видимы - разве что какой-нибудь из них полностью закрыт другими элементами управления в форме. Если такое случилось, используйте команды Order (Упорядочить) из меню Format, чтобы переупорядочить элементы управления.
Вот рекомендации по поводу использования команд Order.
* Если можно добраться хотя бы до небольшого кусочка спрятанного элемента управления, щелкните на нем, чтобы выделить его, а затем выберите Format=Order=Bring to Front (Формат= Упорядочить= На передний план), чтобы элемент управления оказался поверх других.
* Если нужный вам элемент управления полностью закрыт другими элементами управления, выделите самый верхний из них и отправьте его под все остальные, выбрав Format=Order=Send to Back (Формат=Упорядочить=На задний план). Повторяйте эту операцию до тех пор, пока нужный вам элемент управления не окажется наверху.
* Если вы специально разместили элементы управления так, чтобы во время выполнения программы они пересекались, используйте команды Format=Order=Bring Forward (Формат=Упорядочить=Переместить вперед) и Format=Order=Bring Backward (Формат=Упорядочить=Переместить назад), чтобы разместить пересекающиеся элементы управления так, как вам нужно. Эти команды перемещают элемент управления в стопке на одну позицию вперед или назад.

