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

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

Жанры

Офисное программирование
Шрифт:

Кнопка Нажми

Private Sub CommandButton1_Click

For Each Ctrl In myForm.Controls 'цикл по всем элементам управления

msgCode = vbYesNo + vbQuestion

'Вопрос об очередном элементе управления:

Answer = MsgBox(prompt:="Cкрыть элемент " & Ctrl.Name,

Buttons:=msgCode, Title:="Bonpoc")

If Answer = vbYes Then 'ответ «Да»

Ctrl.Visible = False 'скрыть очередной элемент

End If

Next Ctrl

End Sub

Кнопка Закрыть

Private Sub CommandButton2_Click

Unload Me

End Sub

4. Откомпилируйте приложение.

5. Запустите на выполнение (рис. 43, 44, 45).

Примечание. Скрытие

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

Рис. 43. Первоначальный запуск формы и вызов процедуры кнопки Нажми

Рис. 44. Выполнение скрытия элемента label1 и следующий запрос

Рис. 45. Вид формы перед удалением последнего элемента управления

В этом случае необходимо только щелкнуть по нужному элементу и прописать код, для каждого элемента свой:

Private Sub Label1_Click

msgCode = vbYesNo + vbQuestion

Answer = MsgBox(prompt:="Cкрыть элемент",

Buttons:=msgCode, Title:="Вопрос")

If Answer = vbYes Then

Label1.Visible = False

Else

Label1.Visible = True

End If

End Sub

В результате работа формы будет более рациональной (рис. 46).

Рис. 46. Работа формы по щелчку скрываемого элемента

Набор страниц MultiPage

Элемент управления MultiPage объединяет несколько независимых диалоговых окон – страниц (вкладок). Заголовки страниц обычно видны на одной из сторон элемента на их закладках, а переход на страницу происходит после щелчка по ее закладке. Этот простой переход с одной страницы на другую и делает MultiPage удобным средством для представления разнородных данных, относящихся к одному объекту. Такие данные в «бумажных» офисах хранятся обычно в отдельных папках и образуют дела, досье и т. д. Каждая страница из Multipage – это объект типа Page, а все они включены в коллекцию Pages (страницы). При создании элемента MultiPage в него автоматически помещаются две страницы с именами Page1 и Раgе2. Имена можно изменять, присутствует возможность добавления и новых страниц. Рассмотрим основные свойства набора страниц.

Свойство count определяет, какое количество страниц возвращается.

Свойство value для элемента multipage определяет номер текущей активной страницы в коллекции pages.

Свойство selecteditem (его можно только читать) возвращает текущую активную страницу (как объект). Его можно использовать для считывания и установки свойств этой страницы и входящих в нее элементов управления.

Свойство style определяет, в каком виде представляются заголовки страниц. По умолчанию оно равно fmtabstyletabs = 0 и задает представление заголовков в виде закладок в полосе заголовков. Каждая закладка с заголовком находится внутри границ своей страницы. Если значение fmtabstylebuttons = 1, то заголовок каждой страницы находится на отдельной кнопке, расположенной в полосе заголовков. Переход на страницу происходит после выбора кнопки с ее заголовком. Если же значение fmtabstylenone = 2, то полоса с заголовками страниц на экран не выводится.

Свойство taborientation

задает расположение полосы с заголовками страниц (табл. 13).

Таблица 13

Значения свойства TabOrientation

Булево свойство multirow позволяет создать несколько полос с закладками (по умолчанию его значение равно false, что соответствует одной полосе закладок).

Свойства tabfixedheight и tabfixedwidth устанавливают или возвращают высоту и ширину закладки (в точках). При значении 0 ширина закладок устанавливается автоматически, так чтобы в каждой закладке помещалось ее название и занимало всю ширину элемента. При значениях больше 0 у всех закладок одинаковые размеры, заданные свойством TabFixedWidth. Минимально возможный размер закладки – 4 точки.

Для того чтобы редактировать свойства элемента MultiPage, необходимо выделить этот элемент так, чтобы рамка вокруг элемента выделилась точками (рис. 47). Для этого щелкните по самой рамке, если она выделена черной штриховкой.

Рис. 47. Рамка элемента multipage

Если необходимо установить свойства самих вкладок, необходимо щелкнуть по ним, после чего рамка станет выделяться черной штриховкой (рис. 48).

< image l:href="#"/>

Рис. 48. Рамка элемента page

Если необходимо добавить еще одну вкладку в режиме конструктора, то необходимо щелкнуть правой кнопкой мыши по последней вкладке (странице) и выбрать команду New Page (рис. 49).

Рис. 49. Добавление новой страницы

Если необходимо переименовать страницу, ввести всплывающие подсказки и установить номер активной по умолчанию страницы, необходимо выбрать команду Rename (рис. 49), в результате которой появляется диалоговое окно, где устанавливаются перечисленные свойства (рис. 50 и 51).

Рис. 50. Установление свойств вкладки

Пример 25. Создать форму, включающую в себя ряд вкладок (страниц), содержащих вопросы некоторого теста. На каждой странице находятся очередной вопрос и кнопка «Ответ», фиксирующая выбор правильного (неправильного) ответа. После перехода на следующую страницу (щелчок по корешку страницы с соответствующим именем) действия повторяются. Итоговая страница содержит кнопку «Результат», которая выводит правильность ответов и сумму набранных баллов (1 правильный ответ = 1 балл).

Рис. 51. Свойства в действии

Создать программу, выполняющую все требования примера.

Технология выполнения

1. Запустите приложение Word и сохраните документ.

2. Перейдите в редактор VBA и создайте форму, содержащую 4 страницы (рис. 52).

Рис. 52. Первая страница теста

3. Оформите первую страницу (рис. 52) и обработайте кнопку «Ответ».

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

Инцел на службе демоницы 1 и 2: Секса будет много

Блум М.
Инцел на службе демоницы
Фантастика:
фэнтези
5.25
рейтинг книги
Инцел на службе демоницы 1 и 2: Секса будет много

Весь цикл «Десантник на престоле». Шесть книг

Ланцов Михаил Алексеевич
Десантник на престоле
Фантастика:
альтернативная история
8.38
рейтинг книги
Весь цикл «Десантник на престоле». Шесть книг

Предатель. Цена ошибки

Кучер Ая
Измена
Любовные романы:
современные любовные романы
5.75
рейтинг книги
Предатель. Цена ошибки

Жандарм 2

Семин Никита
2. Жандарм
Фантастика:
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Жандарм 2

Прогрессор поневоле

Распопов Дмитрий Викторович
2. Фараон
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Прогрессор поневоле

Всемирная энциклопедия афоризмов. Собрание мудрости всех народов и времен

Агеева Елена А.
Документальная литература:
публицистика
5.40
рейтинг книги
Всемирная энциклопедия афоризмов. Собрание мудрости всех народов и времен

Истребитель. Ас из будущего

Корчевский Юрий Григорьевич
Фантастика:
боевая фантастика
попаданцы
альтернативная история
5.25
рейтинг книги
Истребитель. Ас из будущего

Очешуеть! Я - жена дракона?!

Амеличева Елена
Фантастика:
юмористическая фантастика
5.43
рейтинг книги
Очешуеть! Я - жена дракона?!

Отмороженный 4.0

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

Треугольная шляпа. Пепита Хименес. Донья Перфекта. Кровь и песок.

Бласко Висенте Ибаньес
65. Библиотека всемирной литературы
Проза:
классическая проза
5.00
рейтинг книги
Треугольная шляпа.
Пепита Хименес.
Донья Перфекта.
Кровь и песок.

Измена. Жизнь заново

Верди Алиса
1. Измены
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Измена. Жизнь заново

Три `Д` для миллиардера. Свадебный салон

Тоцка Тала
Любовные романы:
современные любовные романы
короткие любовные романы
7.14
рейтинг книги
Три `Д` для миллиардера. Свадебный салон

Бастард Императора. Том 5

Орлов Андрей Юрьевич
5. Бастард Императора
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Бастард Императора. Том 5

Идеальный мир для Лекаря 21

Сапфир Олег
21. Лекарь
Фантастика:
фэнтези
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 21