Главная страница

Лабораторная работа(VBA)_№6 работа с формами. Лабораторная работа 6 Работа с формами


Скачать 0.54 Mb.
НазваниеЛабораторная работа 6 Работа с формами
Дата08.02.2023
Размер0.54 Mb.
Формат файлаdocx
Имя файлаЛабораторная работа(VBA)_№6 работа с формами.docx
ТипЛабораторная работа
#925935


Лабораторная работа №6
«
Работа с формами»

Примеры создания программ для работы с формами 2

Расположение элементов на форме 20

Самостоятельная работа 21

Задание №1 21

Задание №2 21

Задание №3 22

Задание №4 22

Состав Панели элементов:

Название элемента

Имя в программе

Назначение

Надпись

Label

используется для создания заголовков к элементам, не имеющих свойства Captoin (таких как, ListBox, TextBox)

Поле

TextBox

используется для ввода текста или для вывода результатов

Рамка

Frame

элемент предназначен для группирования элементов в форме

Кнопка

CommandButton

используется для запуска процесса выполнения некоторых действий, вызываемы нажатием кнопки

Поле со списком

ComboBox

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

Флажок

CheckBox

элемент, который создает поле для проставления галочки. Это поле имеет два состояния — отмечена галочка или нет

Переключатель

OptionButton

элемент предназначен для выбора одного элемента из нескольких

Список

ListBox

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

Полоса прокрутки

ScrollBar

элемент создает горизонтальную или вертикальную линейку прокрутки

Счетчик

SpinButton

регулятор счетчика (спиннер) аналогичен линейке прокрутки

Существуют и другие элементы управления.
В программе все объекты имеют номер. Например, если создать в окне диалога флажок, то его имя в программе будет CheckBox1.

Создание формы:

  1. Откройте окно Редактора Visual Basic

  2. Insert - UserForm.

Примеры создания программ для работы с формами


Пример 1. Создать окно диалога, содержащее поля для ввода фамилии и имени. Значения этих полей записать в электронную таблицу.

  1. На рабочем листе "Лист1" создайте таблицу следующего вида:



  1. Создайте форму, которая будет содержать два поля для ввода текста (имени и фамилии), две надписи и две кнопки. При нажатии кнопки ВВОД информация из текстовых полей будет записываться в ячейки рабочего листа, а при нажатии кнопки КОНЕЦ будет происходить окончание работы с формой.



P.S. Средние (неподписанные) элементы управления – это TextBox1 и TextBox2.

  1. Установите свойства объектов:

Объект

Свойство

Значение

Label1

Caption

Фамилия (см.рис. ниже)

Label2

Caption

Имя

CommandButton1

Caption

Ввод

CommandButton2

Caption

Конец



После изменения свойств элементов управления форма будет выглядеть так:



  1. Кнопке КОНЕЦ назначим процедуру (для ввода процедуры выполните двойной щелчок мышью по кнопке КОНЕЦ):

Private Sub CommandButton2_Click()

End

End Sub

  1. КнопкеВВОДназначимпроцедуру:

Private Sub CommandButton1_Click()

Dim Фамилия, Имя As String

Dim Row As Integer

Row = Application.CountA(Sheets("Лист1").Range("A:A")) + 1

With UserForm1

Фамилия = .TextBox1.Text

Имя = .TextBox2.Text

End With

With Sheets("Лист1")

.Cells(Row, 1).Value = Фамилия

.Cells(Row, 2).Value = Имя

End With

With UserForm1

.TextBox1.Text = ""

.TextBox2.Text = ""

End With

End Sub

Пояснения к программе:

В VBA диапазон "А:А" означает столбец А. Функция CountA подсчитывает число непустых ячеек в выделенном диапазоне. Такимобразом, функция

Row = Application.CountA(Sheets("Лист1").Range("A:A")) + 1

вычисляет число непустых ячеек в столбце А.

В переменную целого типа Row записывается количество непустых ячеек столбца А и значение переменной увеличивается на 1 для того, чтобы считанная из текстовых полей информация записывалась затем в пустые строки таблицы.

  1. Программа запускается клавишей F5. Для запуска программы можно также создать командную кнопку на рабочем листе Excel, назначив ей соответствующий макрос. Например, такой:

Sub Кнопка1_Щелкнуть()

UserForm1.Show

EndSub

После того, как на экран будет выведена форма, введите в поле для ввода Фамилия свою фамилию, в поле для ввода Имя – свое имя (переключаться между полями можно кнопкой Tab или щелчком мыши). Затем нажмите на форме кнопку ВВОД. Введенные фамилия и имя появятся в ячейках рабочего листа.

Введите еще раз Фамилию и Имя. Затем нажмите кнопку КОНЕЦ на форме.

Пример 2.Создайте форму, содержащую два переключателя и две кнопки. В зависимости от того, какой переключатель установлен, в ячейку Е1 будет записываться название этого переключателя.


Установите свойства объектов:

Объект

Свойство

Значение

OptionButton1

Caption

Муж

OptionButton2

Caption

Жен

CommandButton1

Caption

ВВОД

CommandButton2

Caption

КОНЕЦ

Кнопка ВВОД считывает значение переключателя, кнопка КОНЕЦ осуществляет выход из программы.

Кнопке КОНЕЦ назначим процедуру:

PrivateSubCommandButton2_Click()

End

End Sub

Кнопке ВВОД назначим процедуру:

Private Sub CommandButton1_Click()

Dim Пол As String

With UserForm2

If .OptionButton1 = True Then Пол = "Муж"

If .OptionButton2 = True Then Пол = "Жен"

End With

Sheets("Лист1").Cells(1, 5) = Пол

EndSub

После того, как на экран будет выведена форма, установите любой переключатель. Затем нажмите на форме кнопку ВВОД. Посмотрите, что будет введено в Е1.

Пример 3. Создайте форму, содержащую два флажка и две кнопки. Если флажки установлены, то в ячейках G1 и G2, соответственно, записывается слово «Да», в противном случае «Нет».

Окно формы имеет вид:



Установите свойства объектов:

Объект

Свойство

Значение

CheckBox1

Caption

Оплачено

CheckBox2

Caption

Паспорт сдан

CommandButton1

Caption

НАЧАЛО

CommandButton2

Caption

КОНЕЦ

Кнопка НАЧАЛО считывает значения флажков, кнопка КОНЕЦ – выход из программы.
Кнопке КОНЕЦ назначим процедуру:

PrivateSubCommandButton2_Click()

End

End Sub

Кнопке НАЧАЛО назначим процедуру:

Private Sub CommandButton1_Click()

Dim Паспорт As String, Оплачено As String

With UserForm3

If .CheckBox1.Value = True Then

Оплачено = "Да"

Else

Оплачено = "Нет"

End If

If .CheckBox2.Value = True Then

Паспорт = "Да"

Else

Паспорт = "Нет"

End If

End With

With Sheets("Лист1")

.Cells(1, 7) = Оплачено

.Cells(2, 7) = Паспорт

End With

EndSub

После того, как на экран будет выведена форма, установите любой из флажков (или сразу два). Затем нажмите на форме кнопку НАЧАЛО. Посмотрите, что будет введено в G1 и G2.

Пример 4. Создайте форму, содержащую список и две кнопки. Выбранное из списка значение запишите в ячейку G4.

Окно формы имеет вид:



Установите свойства объектов:

Объект

Свойство

Значение

CommandButton1

Caption

НАЧАЛО

CommandButton2

Caption

КОНЕЦ



Вариант 1. При нажатии кнопки НАЧАЛО формируется список с помощью метода AddItem.

Кнопке КОНЕЦ назначим процедуру:

PrivateSubCommandButton2_Click()

End

EndSub

Кнопке НАЧАЛО назначим процедуру:

Private Sub CommandButton1_Click()

With ListBox1

.AddItem "Люкс"

.AddItem "Одноместный"

.AddItem "Двухместный"

EndWith

EndSub

Для считывания значения поля списка в клетку G4 назначьте элементу ListBox1 процедуру:

Private Sub ListBox1_Click()

Cells(4, 7) = ListBox1

EndSub

После того, как на экран будет выведена форма, нажмите кнопку НАЧАЛО. Выберите любой элемент списка и посмотрите, что будет введено в G4.

Вариант 2. Список формируется с помощью метода AddItem, и появляется на форме при ее выводе на экран. Тогда на форме достаточно будет одной кнопки КОНЕЦ.



Кнопке КОНЕЦ назначим процедуру:

PrivateSubCommandButton2_Click()

End

EndSub

Для считывания значения поля списка в клетку G4 назначьте элементу ListBox1 процедуру:

Private Sub ListBox1_Click()

Cells(4, 7) = ListBox1

EndSub

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

Private Sub UserForm_Initialize()

With ListBox1

.AddItem "Люкс"

.AddItem "Одноместный"

.AddItem "Двухместный"

EndWith

EndSub

После того, как на экран будет выведена форма с заполненным списком, выберите любой элемент списка и посмотрите, что будет введено в G4. Нажмите кнопку КОНЕЦ для завершения работы с формой.
Другие способы заполнения списков значениями:

  1. Массивом. Список состоит из одной колонки:

Private Sub CommandButton1_Click()

a = Array("Люкс", "Одноместный", "Двухместный")

With ListBox1

.List = a

.ListIndex = 0

End With

End Sub

  1. Прочитать предварительно введенные значения из ячеек рабочего листа:

Private Sub CommandButton2_Click()

With ListBox2

.RowSource = "c2:c4"

.ListIndex = 0

End With

EndSub

Примечание: в ячейки c2, c3, c4 предварительно введите с клавиатуры Люкс, Одноместный, Двухместный, соответственно.

  1. Поэлементно. Список состоит из двух колонок:

Private Sub CommandButton3_Click()

With ListBox3

.ColumnCount = 2

.AddItem ("Люкс")

.List(0, 1) = "3500 руб."

.AddItem ("Одноместный")

.List(1, 1) = "2000 руб."

.AddItem ("Двухместый")

.List(2, 1) = "2500 руб."

.ListIndex = 0

End With

End Sub

  1. Массивом. Список состоит из трех колонок:

Private Sub CommandButton4_Click()

Dim a(2, 2) As String

a(0, 0) = "Люкс"

a(0, 1) = "3500 руб."

a(0, 2) = "Обязательна бронь"

a(1, 0) = "Одноместный"

a(1, 1) = "2000 руб."

a(1, 2) = "Обычное заселение"

a(2, 0) = "Двухместый"

a(2, 1) = "2500 руб."

a(2, 2) = "Обычное заселение"

With ListBox4

.ColumnCount = 3

.List = a

.ListIndex = 0

End With

End Sub



Создайте такую форму и испытайте все варианты заполнения списков

P.S. Для первых трех кнопок (верхний ряд) установите свойства (помимо Caption):

  • AutoSize - значение False (убрать возможность изменения размера элемента управления в зависимости от введенных значений);

  • MultiLine- значение True (ввод многострочного текста)

  • WordWrap - значение True (автоматический перенос текста на новую строку, когда будет достигнута граница текстового поля, если MultiLine содержит значение true).

Пример 5.Создайте форму, содержащую поле со списком и две кнопки. Выбранное из списка значение запишите в ячейку K1.

P.S. Поле со списком следует заполнить перед использованием. Для добавления новых значений используется метод AddItem (Добавить элемент). Обычно вызовы этого метода помещают в обработчик события Initialize формы, на которой расположено поле со списком.

Работа с ComboBox аналогична работе с ListBox. Отличие только в том, что в поле со списком (во время работы с формой) можно с клавиатуры ввести недостающее значение.
Окно формы имеет вид:



Установите свойства объектов:

Объект

Свойство

Значение

CommandButton1

Caption

ВВОД

CommandButton2

Caption

КОНЕЦ ВВОДА

Кнопке КОНЕЦ ВВОДА назначим процедуру:

Private Sub CommandButton2_Click()

End

End Sub

КнопкеВВОДназначимпроцедуру:

Private Sub CommandButton1_Click()

Dim Список As String

Список = UserForm6.ComboBox1.Value

Sheets("Лист1") .Cells(1, 11) = Список

End Sub

Для инициализации поля со списком создадим процедуру:

Private Sub UserForm_Initialize()

ComboBox1.AddItem "Люкс"

ComboBox1.AddItem "Одноместный"

ComboBox1.AddItem "Двухместный"

EndSub

После того, как на экран будет выведена форма, откройте список (нажмите кнопку со стрелкой), укажите в списке требуемый элемент списка. Затем нажмите на форме кнопку ВВОД. Посмотрите, что будет введено в K1.

Затем введите с клавиатуры в поле своё значение, например, Полулюкс, нажмите кнопку ВВОД и посмотрите, что будет введено в K1.

Способы заполнения значениями поля со списком такие же, как и для списков (ListBox).

Пример 6. Создайте форму, содержащую поле для ввода текста, две кнопки и счетчик, значение которого будет считываться для ввода в текстовое поле, а затем записываться в клетку К4.
Окно формы имеет вид:



Установите свойства объектов:

Объект

Свойство

Значение

CommandButton1

Caption

ЗАПИСЬ

CommandButton2

Caption

КОНЕЦ


Для кнопки КОНЕЦ назначим процедуру:

Private Sub CommandButton2_Click()

End

End Sub

Для кнопки ЗАПИСЬ назначим процедуру записи значения текстового поля в клетку К4:

Private Sub CommandButton1_Click()

Cells(4, 11) = TextBox1.Text

EndSub

Со счетчиком (элементом SpinButton1) свяжем процедуру:

Private Sub SpinButton1_Change()

TextBox1.Text = CStr(SpinButton1.Value)

End Sub

Эта процедура выводит в текстовое поле текущее значение счетчика, преобразуя числовое значение счетчика в строковую переменную с помощью функции CStr.

Текстовому полю (элементу TextBox1) назначим процедуру:

Private Sub TextBox1_Change()

SpinButton1.Value = Cint(TextBox1.Text)

End Sub

Эта процедура используется для синхронизации значения счетчика и содержимого текстового поля: преобразует текстовое значение поля в числовое с помощью функции Cint.

Для задания максимального и минимального значения счетчика создадим процедуру:

Private Sub UserForm_Initialize()

SpinButton1.Min = 1

SpinButton1.Max = 10000000

EndSub

После того, как на экран будет выведена форма, с помощью кнопок со стрелками укажите нужное число. Затем нажмите на форме кнопку ЗАПИСЬ. Посмотрите, что будет введено в K4.

Можно перед началом работы со счетчиком в текстовое поле ввести число, а затем использовать счетчик – счетчик будет продолжать работу с этого числа.

Пример 7. Рамки (контейнеры) Frame.

Рамки визуально и логически объединяют некоторые элементы управления (чаще всего флажки и переключатели).

  1. Для флажков (элемент управления CheckBox) рамки используются как оформление для элементов управления.

Для объединения группы элементов управления в рамке (см. рисунок), сначала надо на форме расположить рамку, а затем заполнить ее элементами управления.



  1. Все переключатели (элемент управления OptionButton), расположенные на одной форме, автоматически объединяются в одну группу. Поэтому из всех этих переключателей выбран может быть лишь один. Как же быть, если на форме надо расположить несколько групп таких переключателей и выбрать один переключатель в каждой группе? Ответ на этот вопрос кроется в использовании рамок (элемент управления Frame). Переключатели, размещенные в пределах одной рамки, обрабатываются отдельно от переключателей, размещенных в других рамках и вне рамок на форме (на форме вместо термина переключатель используется термин радиокнопка).


Пример 8.Полоса прокрутки ScrollBar.

Создайте форму, содержащую две надписи и полосу прокрутки.



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

  • Max (Максимум) – минимальное значение полосы прокрутки (только целые неотрицательные числа);

  • Min (Минимум) – максимальное значение полосы прокрутки (только целые неотрицательные числа);

  • SmallChange (Маленькое изменение) – устанавливает шаг изменения значения при щелчке по одной из стрелок полосы прокрутки;

  • LargeChange (Большое изменение) – шаг, с которым меняется значение при перетаскивании бегунка полосы с помощью мыши;

  • Value (Значение) – возвращает значение полосы прокрутки (только целые неотрицательные числа).

Элемент управления Scrollbar использует события Scroll и Change, чтобы контролировать движение бегунка по полосе прокрутки.

Событие

Описание

Change

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

Scroll

Происходит при перемещении бегунка (во время перемещения).

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

Событие Change происходит после того, как бегунок отпущен, или когда нажаты кнопки прокрутки или полоса прокрутки.

Расположение кнопок полосы прокрутки (горизонтальное или вертикальное) выбирается автоматически в зависимости от ширины и высоты полосы прокрутки.

Введите следующие обработчики событий для полосы прокрутки:

Private Sub ScrollBar1_Scroll()

Label1.Caption = ScrollBar1.Value

End Sub

и

Private Sub ScrollBar1_Change()

Label2.Caption = ScrollBar1.Value

End Sub

Проверьте работу полосы прокрутки.
Пример 9. Использование выбранного из списка (или поля со списком) значения в текстовом поле на форме.

Список


текстовое поле TextBox1


Private Sub CommandButton1_Click()

End

End Sub

Private Sub ListBox1_Click()

With UserForm4 ‘укажитездесьсвоюформу

If ListBox1.Text = "Россия" Then

TextBox1.Text = "Население России - 140 млн. чел."

ElseIf ListBox1.Text = "Китай" Then

TextBox1.Text = "Население Китая - 1 млрд. чел."

Else

TextBox1.Text = "Население Японии - 120 млн. чел."

End If

End With

End Sub

Private Sub UserForm_Initialize()

With ListBox1

.AddItem "Россия"

.AddItem "Китай"

.AddItem "Япония"

.ListIndex = 0

End With

End Sub

Аналогично, для элемента управления ComboBox1.

Пример 10.Работа с несколькими формами.

Если в вашем проекте имеется несколько форм, вам понадобится работать с ними, показывая и скрывая их при необходимости. Чтобы отобразить форму, воспользуйтесь методом Show (Показать). Для скрытия формы используйте метод Hide (Скрыть).

Создадим несколько форм и настроим навигацию между ними. Одна из форм главная – из нее вызываются остальные формы.

Добавьте в проект три формы. Настройте свойство Caption:

Свойство

Форма №1

Форма №2

Форма №3

Caption

Главная форма

Первая форма

Вторая форма

Добавьте на форму UserForm11 (на главную форму) две кнопки. Одну из них подпишите «Показать первую форму», вторую – «Вызвать вторую форму». Эти кнопки должны скрывать форму UserForm1, и вызывать, соответственно, UserForm2 и UserForm3.

На форму UserForm2 добавьте кнопку с надписью «На главную». Нажатие на эту кнопку должно скрывать UserForm2 и отображать UserForm1. Аналогичную кнопку добавьте на UserForm3.
Окно проекта выглядит так:



Создадим обработчик события Initialize для формы UserForm12 (для главной формы). Добавим в него команду вывода окна сообщения с надписью «Добро пожаловать в программу». Это сообщение будет выведено на экран перед выводом формы.

Для каждой из кнопок на форме создадим процедуру обработки события «нажатие кнопки» (см. ниже):



Обработчик события Click для кнопки на форме UserForm2 выглядит так:



Обработчик события Click кнопки для кнопки на форме UserForm3 выглядит аналогично. Отличие в том, что он скрывает UserForm3.

Запустите UserForm1 (главную форму). Проверьте работу проекта.

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

Пример 11.Набор страниц (элемент управления MultiPagе)

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

Управлять вкладками можно с помощью контекстного меню, которое появляется при щелчке по элементу управления.



Вкладки организованы в коллекцию Pages (Страницы). Номера вкладок начинаются с нуля. Чтобы обратиться к элементу управления, расположенному на одной из вкладок элемента управления MultiPagе, нужно использовать такую конструкцию:

Имя_элемента_MultiPage.Имя_вкладки.Имя_элемента_на_вкладке

Важнейшие свойства объекта MultiPage следующие:

  • Value - возвращает номер активной вкладки (нумерация начинается с нуля).

  • SelectedItem - возвращает выбранную страницу.

При выборе вкладки генерируется событие Change.

Создайте форму, поместите на нее элемент управления MultiPage. Добавьте одну вкладку к набору вкладок (через контекстное меню), добавляемому на элемент по умолчанию. Вкладки имеют имена Page1, Page2 и т.д. Чтобы настраивать свойства каждой вкладки по отдельности, выделите эти вкладки в окне редактора.

Имя вкладки

Заголовок

Элементы управления на вкладке

Page1

Вкладка №1

TextBox1 - текстовое поле
CommandButton1 - кнопка с надписью «Перенести текст на вкладку №3»

Page2

Вкладка №2




Page3

Вкладка №3

Label1 - надпись

Настройте событие Change для MultiPage1 таким образом, чтобы при выборе каждой вкладки выводилось бы окно сообщения с именем этой вкладки:





Теперь поработаем с событием Click кнопки CommandButton1, которая расположена на вкладке Page1. При нажатии на кнопку CommandButton1 (которая расположена на вкладке Page1), текст (который введен в текстовое поле TextBox1), должен быть перенесен на надпись Label1 (которая расположена на вкладке Page3).

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



В этой процедуре Item(0) представляет первую страницу в коллекции Pages (вместо 0 можно использовать имя вкладки), Item(2) - третью.

Запустите форму, введите в текстовое поле какую-либо текстовую строку (в примере это – Текст, который должен быть перенесен) и нажмите кнопку «Перенести текст на вкладку №3».

Форма после выбора третьей страницы.


Пример 12. Набор вкладок (элемент управления TabStrip)

Этот элемент управления используется для организации нескольких рабочих областей на форме. В объект входит семейство Tabs (Вкладки), которое содержит все активные вкладки.

Основное событие объекта – Change (Изменение). Оно происходит при смене вкладки.

Наборы вкладок используются достаточно редко. Например, их можно применить, чтобы по-разному заполнять одни и те же поля, по-разному устанавливать флажки и т.д.

Дело в том, что в отличие от элемента управления MultiPage1 (набор страниц) элемент управления TabStrip (набор вкладок) не содержит элементы управления внутри себя. Он служит как бы «фоном» для размещения элементов.

Самый яркий пример использования TabStrip - это создание приложений с многоязыковым интерфейсом. Рассмотрим пример.

Добавьте в проект форму UserForm1 (название формы Двуязычный интерфейс), разместите на ней элемент управления TabStrip1. По умолчанию у TabStrip две вкладки. Первая по порядку вкладка имеет номер 0, вторая - 1 и т.д. Для того чтобы узнать номер активной вкладки, можно воспользоваться свойством Value элемента управления TabStrip.

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

Добавьте на форму, поверх TabStrip1, метку с именем Label1 и текстом «Добро пожаловать!», а так же кнопку CommandButton1 с надписью «Вперед».




Теперь добавьте обработчик события Change для TabStrip1.



В результате, если будет выбрана первая вкладка (индекс 0), свойствам Caption элементов управления Label1 и CmandButton1 присваиваются русскоязычные заголовки. Если же выбрана вкладка с индексом 1, элементам управления присваиваются англоязычные заголовки.



Расположение элементов на форме


Работая с элементами управления, вы можете столкнуться с проблемой настройки их размеров и взаимного расположения. Эти параметры можно настраивать вручную, перетаскивая элементы по форме с помощью мыши или модифицируя их свойства. Но есть еще один способ решения этой проблемы — воспользоваться командами контекстного меню. Некоторые из них:

Align (выравнивание) — выравнивание элементов относительно различных опорных точек. Например — команда Left (по левому краю) выравнивает все выделенные (с помощью кнопки Shift) элементы формы по левому краю самого левого элемента.

Make Same Size (сделать одинакового размера) — команды этого подменю позволяют привести выделенные элементы управления на форме к одному размеру. Размеры изменяются в большую сторону (Width – ширина, Height – высота, Both – оба размера).

Group (группировать) — позволяет объединить несколько выделенных элементов управления. Группу элементов можно, например, перетаскивать, выделив одним щелчком мыши. Группировка элементов не отменяет возможности работать с ними по отдельности. Для этого достаточно сначала выделить группу, а потом — нужный элемент управления в группе.

Ungroup (разгруппировать) — разгруппировывает ранее созданную группу элементов.

Самостоятельная работа

Задание №1


  1. Создайте форму: на форме расположите три текстовых поля, кнопку ВВОД и кнопку КОНЕЦ.

  2. Работа с формой:

  1. после нажатия кнопки ВВОД:

  • форма становится невидимой;

  • на экран выводится окно сообщения:

«Здравствуй, введенное имя, студент группы номер группы направления название направления

где введенное имя – значение из первого текстового поля;

номер группы – значение из второго текстового поля;

название направления – значение из третьего текстового поля (направления, например, Прикладная информатика, Бизнес-информатика, Экономика и т.д.);

  • после нажатия в окне сообщения кнопки ОК, форма вновь становится видимой.

  1. после нажатия кнопки КОНЕЦ форма закрывается.



Задание №2


Создайте форму (см. рисунок),


Всплывающая подсказка к кнопке ОК
(см. пример в лекции)


с помощью, которой на рабочем листе Excel заполняется таблица следующей структуры:



Задание №3



Задание №4


Создайте базу данных «Отель Общежитие БКТ» (см. рис. на следующей странице). Для этого разработайте приложение с диалоговым окном «Общежитие», в котором:

  • счетчик управляет вводом продолжительности проживания;

  • в раскрывающемся списке выводятся три типа номеров: одноместный, двухместный, люкс, стоимость проживания в которых равна соответственно 1550, 1400 и 1750 руб. в сутки;

  • если постоялец заказывает завтраки в номер, то суточная оплата возрастает на 300 руб.;

  • добавьте на форму поле Стоимость проживания и кнопку Расчет стоимости. При нажатии на кнопку Расчет стоимости в поле Стоимость проживания должна выводиться суммарная стоимость проживания клиента

  • при нажатии на кнопку ОК все данные из диалогового окна должны выводиться в базу данных, создаваемую на рабочем листе; кроме того, происходит автоматическое сохранение рабочей книги на диск. При нажатии на кнопку Отмена, форма закрывается без выполнения каких-либо операций.


С помощью, формы «Общежитие» на рабочем листе Excel заполняется таблица следующей структуры:



1 У вас номера форм могут быть другими

2 У вас номера форм могут быть другими





написать администратору сайта