- •Тема 1. Модульная структура приложений и стандартные модули в Visual Basic
- •1.1. Структура приложений и программ в Visual Basic
- •Выбрать ссылку Создать проект в окне Начальная страница;
- •Выполнить команду Создать проект из элемента главного меню Файл (File);
- •Нажать кнопку Создать проект, расположенную на стандартной панели инструментов.
- •Создание dll – проекта Библиотека классов.
- •Создание консольного проекта
- •Связывание с dll
- •Организация консольного интерфейса
- •Создание Windows проекта
- •Модуль формы, например, Public Class Form1;
- •Стандартный модуль, например, Module Module1; модуль класса, например, Public Class Class1.
- •Операторы Option.
- •Операторы Imports.
- •Операторы Namespace и элементы уровня пространства имен.
- •1.2. Стандартные модули и их использование
- •После этого в окне Обозреватель решений появится информация о том, что в проект добавлена форма Form2.
- •Примера 1.3-1
- •1.4. Задачи для самостоятельного решения
- •Выходные данные:
- •Разработка проекта:
- •Разработайте программный код:
- •Выполните приложение и получите результаты:
- •Докажите правильность работы программы:
- •2 Вариант реализации проекта:
- •Разработка проекта:
- •Разработайте графический интерфейс пользователя:
- •Установите свойства объектов: Свойства объектов управления разработанных форм установите самостоятельно и отобразите в таблице.
- •Разработайте схемы алгоритмов:
- •Напишите программный код с использованием модуля и
- •Выполните приложение и получите результаты:
- •Докажите правильность работы программ.
- •3 Вариант реализации проекта:
- •Разработайте графический интерфейса пользователя:
- •Установите свойства объектов:
- •Разработайте схемы алгоритмов:
- •Написание программного кода с использованием модуля и
- •Выполните приложение и получите результаты: Результаты работы проекта Пример 1.5.4-3 полностью совпадают с результатами проекта Пример 1.5.4-2 и представлены на рис. 1.5-10 и рис. 1.5-11.
- •Обоснуйте правильность работы программы.
- •1.6. Контрольные вопросы
Примера 1.3-1
Проанализируем вышеприведенные программные коды.
Прежде всего, несколько слов о том, видны ли модульные переменные F1 и F2 из других модулей проекта. Если они объявлены с помощью Dim или Private, то не будут видны, а если с помощью Public, как на рис. 1.3-5 - то будут видны.
Модули используются в качестве общедоступного контейнера для переменных, констант, процедур, функций и других элементов VB. В нашем случае модуль используется для объявления двух общедоступных переменных: F1 и F2. Переменная F1 объявляется как объект класса Form1. Это значит, что после загрузки формы Form1 мы хотим к ней обращаться по имени F1. С этой же целью в процедуру Form1_Load() вставлен оператор F1=Me, что позволяет ссылаться переменной F1 на этот «экземпляр» формы.
После запуска на выполнение проекта форма Form1 появляется на экране. Чтобы появилась и форма Form2, необходимо нажать кнопку Button3. Оператор F2=Form2 или F2=New Form2 порождает форму Form2 как объект класса Form. А чтобы форма стала видна, должен выполниться оператор F2.Show(). Причем, если использовать оператор F2=New Form2, то при каждом нажатии на кнопку Button3 будет каждый раз порождаться новая форма Form2 (их на экране станет столько, сколько раз была нажата эта кнопка). Оператор F2=Form2 (без слова New) порождает форму Form2 только один раз.
Теперь на экране обе формы, и можно работать с каждой из них, нажимая кнопки и вводя текст в текстовые поля.
Посмотрим на содержимое процедур Button1_Click(…) в окнах кода двух форм. Первая строка обеих процедур красит своего хозяина, вторая - соседа. Таким образом, в каждом окне кода можно, как обычно, писать операторы, приказывающие что-то сделать в форме-хозяине данного окна, а можно с таким же успехом писать операторы, приказывающие что-то сделать в любой другой форме проекта. Чтобы VB понимал, о какой форме идет речь, перед именем свойства, принадлежащего чужой форме, нужно писать имя этой формы (в нашем случае F1 или F2) с точкой. Если же форма своя, то вместо имени хозяина можно писать слово Me или вообще ничего не писать. Так, в процедуре Button1_Click(…) первой формы вместо
Me.BackColor = Color.Blue ' можно написать F1.BackColor = Color.Blue ' или просто BackColor = Color.Blue |
Теперь посмотрите на содержимое процедур Button2_Click(…) в обоих окнах кода. Очевидно, что первая строка обеих процедур выводит текст в текстовое поле TextBox1 своего хозяина, вторая - в текстовое поле TextBox1 соседа. Третья строка обеих процедур при помощи метода Focus(), принадлежащего соседу, переводит фокус на соседа. Таким образом, можно обращаться не только к свойствам чужой формы, но и к ее элементам управления, и к методам. К ним тоже применимо соглашение об имени хозяина с точкой.
Рассмотрим структуру проекта Проект-1.3-1. Ее можно увидеть в окне Обозреватель решений (Solution Explorer) (рис. 1.3-7).
Строки окна Обозреватель решений отражают тот факт, что проект Проект-1.3-1 состоит из трех модулей: формы Form1, формы Form2 и стандартного модуля Module1, причем каждый из трех упомянутых модулей сохраняется в своем файле.
Щелкая в окне Обозреватель решений по нужному модулю, а затем (для форм) по одной из двух кнопок слева на панели окна Перейти к коду и Открыть в Конструкторе, мы можем удобно переключаться между различными окнами модулей.
Щелкая правой клавишей мыши в окне, Обозреватель решений (рис.1.3-7) по нужному модулю, а затем в открывшемся контекстном меню выбирая нужный пункт, вы можете этот модуль переименовывать, копировать, вырезать, удалять из проекта, удалять с диска, просматривать и изменять его свойства. Обратите внимание, что, переименовав форму в окне свойств формы, вы не сможете запустить проект, если он с этой формы стартует. Вам понадобится зайти в окно Свойства Проект-1.3-1 элемента главного меню Проект.
Рис. 1.3-7. Окно Обозреватель решений проекта Проект-1.3-1