Читайте также: |
|
Иногда выясняется, что возможностей диалоговых окон MsgBox и InputBox не хватает, и тогда вам приходится конструировать собственные диалоговые окна. В своих проектах я стараюсь использовать одни и те же диалоговые окна, чтобы все мои приложения выглядели одинаково. В этом разделе я покажу, как создать диалоговые окна, которыми можно будет пользоваться в других приложениях.
Чтобы вам не пришлось запоминать все константы и параметры, используемые при создании нестандартных диалоговых окон, создайте специальные функции (они называются оболочками) и внесите их в отдельный модуль кода. Затем этот модуль можно включить в проект и при необходимости вызывать функции-оболочки. Оболочкой называется функция, в которой вызываются другие функции и процедуры. Оболочки упрощают программу и позволяют создавать модули, предназначенные для многократного использования. Основное преимущество оболочки заключается в том, что вы можете всего один раз написать программный код, а потом пользоваться им снова и снова. Давайте рассмотрим небольшой пример:
1. Откройте окно программы для предыдущего примера.
2. Добавьте следующий фрагмент:
Private Sub LoginBox()
Dim гс As String
гс = InputBox("Bведитe имя:")
If гс = "АДМИНИСТРАТОР" Then
MsgBox "Здравствуй, хозяин!"
Else
MsgBox "Привет, " & гс & "!"
End If
End Sub
3. Измените код процедуры события Click кнопки cmdTryMe:
Private.Sub cmdTryMe_Click()
LoginBox
End Sub
4. Запустите приложение.
5. Введите в текстовом поле строку АДМИНИСТРАТОР и нажмите кнопку ОК.
Хотя этот пример во многом похож на предыдущий, диалоговое окно теперь вызывается из процедуры-оболочки LoginBox. Вместо того чтобы включать весь код в процедуру события Click, достаточно вызвать процедуру LoginBox — результат будет тем же.
Обратите также внимание на небольшое изменение. Теперь функция проверяет введенное имя, и если оно совпадает со строкой АДМИНИСТРАТОР — приветствует пользователя специальным сообщением. Данный пример наглядно показывает, как все действия, необходимые для выполнения законченной операции, укладываются в одной удобной функции. Дальнейшее развитие этого подхода описано в уроке 15, «Объектно-ориентированное программирование (ООП)». При желании тему можно развить, связав этот модуль с классом и создав собственный класс для работы с диалоговым окнами. Впрочем, вряд ли это стоит делать - разве что вам приходится часто работать с диалоговыми окнами, отсутствующими в Visual Basic. Например, большинство моих программ распространяется на условиях shareware (условно бесплатно). Поскольку в Visual Basic нет специальных диалоговых окон (например, окна регистрации), используемых в shareware-программах, я создал простейший класс ShareLib и пользуюсь им во всех своих проектах. В следующем примере будет создан простейший класс для работы с диалоговыми окнами, который можно будет настроить в соответствии с вашими требованиями.
ПОДСКАЗКА Если в ваших программах часто используются одни и те же стандартные операции, попробуйте «завернуть» их в специальные функции-оболочки и вызывать эти функции в программе. В результате экономится не только время программирования и отладки, но и память!
Дата добавления: 2015-07-20; просмотров: 84 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Окно ввода | | | Создание класса диалогового окна |