Чтение онлайн

на главную - закладки

Жанры

VBA для чайников

Каммингс Стив

Шрифт:

В основной части диалоговых окон нажатие клавиши <Enter> приводит к нажатию кнопки. Эта кнопка является стандартной кнопкой, так как именно она реагирует на нажатие клавиши <Enter>, за исключением случая, когда фокус переместился на другой элемент управления.

Для того чтобы назначить кнопку стандартной кнопкой в форме, установите значение свойства Default равным True. Конечно, в форме может быть только одна стандартная кнопка.

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

кнопка, предназначенная для отмены сделанных изменения, называется Cancel (Отменить). Если вы не придерживаетесь принятых обозначений, можно назвать эту кнопку 'Never mind" или "Forget it". Независимо от того, что именно написано на данной кнопке, она предназначена для отмены предыдущих операций.

Также по договоренности, после нажатия клавиши <Esc> любое диалоговое окно закрывается, как будто пользователь щелкнул на кнопке, на которой написано Cancel (Отменить) (или что-либо другое). Если свойство кнопки Cancel равно True, это означает, что после нажатия клавиши <Esc> программа будет вести себя так, как будто вы щелкнули на кнопке Cancel (Отменить).

Если свойство Cancel равно True, это автоматически не означает, что после щелчка на кнопке диалоговое окно будет закрыто. Это связывает клавишу <Esc> с событием кнопки Click.

Рамка - это очень важный элемент форм VBA и представляет собой простой прямоугольник с заголовком в верхней части. В рамке можно разместить другие элементы управления.

Рамки служит для следующих двух целей.

* Для визуального выделения группы связанных элементов управления. Это помогает понять пользователю, что эти элементы управления связаны. Также рамки позволяют разделить большие формы на несколько участков (рис. 10.17).

* Для выделения группы кнопок, из которых пользователь должен выбрать только одну.

Рис. 10.17. В данной форме используется три различные рамки для упорядочения групп кнопок

В разделе "Выбор элемента с помощью переключателя", дальше в настоящей главе, я подробно рассматриваю использование рамок. В данном разделе я коснусь основ - использования рамок для организации всех типов элементов управления.

Как только вы добавите рамку в форму, размещение любых других элементов управления в рамке свяжет их и рамку. Теперь при перемещении рамки элементы управления переместятся вместе с ней. При этом они будут занимать те же места в рамке, что и раньше.

Добавить элемент управления в рамку можно следующим образом.

* Нарисовать новый элемент управления в рамке. Создание нового элемента управления происходит обычным образом. Для этого необходимо щелкнуть на соответствующем значке в панели инструментов и затем перетянуть его на то место в форме, на котором он будет находится. В нашем случае - в рамку.

* Переместить существующий элемент управления в рамку. Перетягивайте элемент управления с помощью мыши до тех пор, пока указатель мыши не окажется в рамке. Как только вы отпустите кнопку мыши, элемент управления окажется в рамке.

После того как вы разместите элемент управления в рамке, границы рамки станут выделенными, как будто выбран данный элемент управления (рис. 10.18).

Рис. 1018. После того как вы выберете элемент управления, связанный с

рамкой, данная рамка тоже будет выглядеть выбранной

Для того чтобы разорвать связь между элементом управления и рамкой, достаточно просто перетянуть данный элемент управления в другое место формы. Как только указатель мыши окажется вне границ рамки, отпустите кнопку мыши. При этом связь между элементом управления и рамкой будет разорвана, а сам элемент управления окажется в другом месте.

Теперь оба объекта (форма и элемент управления) можно перемешать отдельно.

Выбор элемента с помощью переключателя

Как в жизни, так и в программном обеспечении, есть много взаимоисключающих вариантов. Покупая мороженое, вы выбираете либо с изюмом, либо с орехами, либо в фруктами, но никогда не все три сразу. Покупая платье или брюки, вы всегда покупаете только те вещи, которые подходят вам по размеру. А когда вы собираетесь жениться на Анне, о других претендентках вы не думаете (Анна должна этому радоваться!).

В Windows для изображения взаимно исключающих вариантов выбора используются так называемые переключатели. Это небольшие круглые кнопки, которые работают как нажимные кнопки на радиоприемниках в автомобилях. Одновременно можно слушать только одну радиостанцию. На рис. 10.19 показан типичный набор переключателей.

Рис. 10.19. Переключатели в действии

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

Не беспокойтесь о том, как создать группу переключателей. Все, что вам необходимо сделать, - это разместить кнопки в одном месте в форме. VBA автоматически объединит их в группу. При запуске программы будет выбран только один переключатель.

А что это за странные слова: переключатели должны быть размещены "в одном месте формы"? Конечно, это не официальная терминология VBA, но можно сказать следующее: одна часть формы является самой формой. Каждая добавленная вами рамка элемента управления создаст другую часть формы. И каждая вкладка элемента управления, состоящего из нескольких вкладок, также является отдельной частью формы (о элементах управления, состоящих из нескольких вкладок, которые создаются для ноутбуков и которые похожи на обычные диалоговые окна Windows, я расскажу в главе 19). Можно разместить рамку внутри другой рамки или на вкладке элемента управления, состоящего из нескольких вкладок. Каждая вложенная рамка занимает свою часть формы.

Если в форме есть несколько рамок, VBA рассматривает переключатели, которые не находятся внутри любой рамки, как одну группу, а переключатели, находящиеся в рамке, - как отдельную группу. На рис. 10.20 видно, что я имею в виду.

Рис. 10.20. Три отдельные группы переключателей

Для того чтобы выбрать переключатель, достаточно просто щелкнуть на нем. Однако обычно после выбора переключателя немедленно ничего не происходит. Диалоговое окно останется открытым. Это позволит пользователю еще раз подумать и, может быть, выбрать другой переключатель. И только после того, как пользователь щелкнет на кнопке ОК, он подтвердит свой выбор.

Поделиться:
Популярные книги

Жрец Хаоса. Книга ХV

Борзых М.
15. Зов пустоты
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Жрец Хаоса. Книга ХV

По осколкам твоего сердца

Джейн Анна
2. Хулиган и новенькая
Любовные романы:
современные любовные романы
6.47
рейтинг книги
По осколкам твоего сердца

Кодекс Охотника. Книга X

Винокуров Юрий
10. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
6.25
рейтинг книги
Кодекс Охотника. Книга X

Иного не желаю. Часть третья

Лошкарёва Виктория Витальевна
5. Оборотная сторона мира
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Иного не желаю. Часть третья

Аляска

Платонова Ольга Николаевна
5.00
рейтинг книги
Аляска

"Дальние горизонты. Дух". Компиляция. Книги 1-25

Усманов Хайдарали
Собрание сочинений
Фантастика:
фэнтези
боевая фантастика
попаданцы
5.00
рейтинг книги
Дальние горизонты. Дух. Компиляция. Книги 1-25

Женщина без лица

Белозерская Алена
1. Опасные связи
Проза:
современная проза
7.00
рейтинг книги
Женщина без лица

Тайны исчезнувших цивилизаций

Зданович Леонид Иванович
Все загадки Земли
Научно-образовательная:
история
культурология
7.33
рейтинг книги
Тайны исчезнувших цивилизаций

Третий

INDIGO
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
Третий

Лета 7071

Полуйко Валерий Васильевич
Проза:
историческая проза
роман
7.00
рейтинг книги
Лета 7071

Я – Малала

Юсуфзай Малала
Документальная литература:
биографии и мемуары
6.80
рейтинг книги
Я – Малала

Избранное

Высоцкий Владимир Семенович
5.00
рейтинг книги
Избранное

Первый Предтеча. Трилогия

Тарс Элиан
Первый Предтеча
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Первый Предтеча. Трилогия

Цикл "Отмороженный". Компиляция. Книги 1-14

Гарцевич Евгений Александрович
Отмороженный
Фантастика:
боевая фантастика
рпг
постапокалипсис
5.00
рейтинг книги
Цикл Отмороженный. Компиляция. Книги 1-14