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).
Рис. 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 – это объект типа Page, а все они включены в коллекцию Pages (страницы). При создании элемента MultiPage в него автоматически помещаются две страницы с именами Page1 и Раgе2. Имена можно изменять, присутствует возможность добавления и новых страниц. Рассмотрим основные свойства набора страниц.
• Свойство count определяет, какое количество страниц возвращается.
• Свойство value для элемента multipage определяет номер текущей активной страницы в коллекции pages.
• Свойство selecteditem (его можно только читать) возвращает текущую активную страницу (как объект). Его можно использовать для считывания и установки свойств этой страницы и входящих в нее элементов управления.
• Свойство style определяет, в каком виде представляются заголовки страниц. По умолчанию оно равно fmtabstyletabs = 0 и задает представление заголовков в виде закладок в полосе заголовков. Каждая закладка с заголовком находится внутри границ своей страницы. Если значение fmtabstylebuttons = 1, то заголовок каждой страницы находится на отдельной кнопке, расположенной в полосе заголовков. Переход на страницу происходит после выбора кнопки с ее заголовком. Если же значение fmtabstylenone = 2, то полоса с заголовками страниц на экран не выводится.
• Свойство taborientation задает расположение полосы с заголовками страниц (табл. 13).
• Булево свойство multirow позволяет создать несколько полос с закладками (по умолчанию его значение равно false, что соответствует одной полосе закладок).
• Свойства tabfixedheight и tabfixedwidth устанавливают или возвращают высоту и ширину закладки (в точках). При значении 0 ширина закладок устанавливается автоматически, так чтобы в каждой закладке помещалось ее название и занимало всю ширину элемента. При значениях больше 0 у всех закладок одинаковые размеры, заданные свойством TabFixedWidth. Минимально возможный размер закладки – 4 точки.
Для того чтобы редактировать свойства элемента MultiPage, необходимо выделить этот элемент так, чтобы рамка вокруг элемента выделилась точками (рис. 47). Для этого щелкните по самой рамке, если она выделена черной штриховкой.
Рис. 47. Рамка элемента multipage
Если необходимо установить свойства самих вкладок, необходимо щелкнуть по ним, после чего рамка станет выделяться черной штриховкой (рис. 48).
Рис. 48. Рамка элемента page