Учебное пособие Рекомендовано учебно-методическим советом угаэс уфа-2006
Вид материала | Учебное пособие |
- Учебное пособие Рекомендовано учебно-методическим советом угаэс уфа-2005 удк 330., 1365.17kb.
- Учебное пособие Часть 1 Рекомендовано учебно-методическим советом угаэс уфа 2006, 1359.55kb.
- Бизнес-планирование предприятия учебное пособие Рекомендовано учебно-методическим советом, 1729.98kb.
- Учебное пособие Рекомендовано учебно-методическим советом угаэс уфа-2009, 2459.47kb.
- Учебное пособие Рекомендовано учебно-методическим советом угаэс уфа-2008, 3188.71kb.
- Учебное пособие Часть 2 Производственная безопасность Рекомендовано учебно-методическим, 1618.75kb.
- Учебное пособие уфа-2007 удк 330. 01 (075. 8) Ббк 65. 02., 836.31kb.
- Учебное пособие Рекомендовано научно-методическим советом, 1565.87kb.
- Учебно методическое пособие Минск 2006 удк 616. 42-006. 441-053. 2(075., 1819.29kb.
- Учебное пособие рекомендовано умо по образованию в области сервиса угаэс, 1695.83kb.
2.8. Встроенные диалоговые окна
В Visual Basic используются встроенные диалоговые окна: окно ввода - InputBox имеет поле для ввода информации, а окно сообщений - MsgBox выводит сообщения для пользователя.
2.8.1. Окно ввода - функция InputBox
Функция InputBox выводит на экран диалоговое окно, содержащее сообщение и поле ввода.

Рис. 2.30. Окно ввода - функция InputBox
Функция InputBox при нажатии кнопки ОК возвращает строку введенную пользователем в поле ввода, при нажатии кнопки Cancel возвращает пустую строку.
Упрощенный синтаксис функции:
InputBox(Prompt [, Title] [, Default])
где
Prompt – приглашение, отображаемое в диалоговом окне. Может содержать несколько строк. Для разделения строк используются символы chr(13) и chr(10)
Title - заголовок, отображаемый в строке заголовка диалогового окна. Если этот параметр опущен, то в строку заголовка помещается имя приложения;
Default – строка по умолчанию, возвращаемая функцией, если пользователь не введет другую строку.
Prompt, Title, Default –параметры типа String.
2.8.2. Окно сообщений - функция MsgBox
Функция MsgBox выводит на экран диалоговое окно, содержащее сообщение. При закрытии окна функция возвращает значение типа Integer, указывающее, какая кнопка была нажата, например, vbOK, vbCancel, vbAbort, vbYes, vbNo.

Рис. 2.31. Окно сообщений - функция MsgBox
Упрощенный синтаксис функции:
MsgBox(Prompt [, Buttons] [, Title])
где
Prompt – приглашение, отображаемое в диалоговом окне.
Buttons - числовое выражение, представляющее сумму констант-атрибутов, которые указывают тип отображаемых кнопок, тип используемого значка, основную кнопку, модальность окна и др. Значение по умолчанию параметра Buttons равно нулю.
Title - заголовок, отображаемый в строке заголовка окна.
Prompt, Title – параметры типа String, Buttons – константа.
2.8.2.1. Константы параметра Buttons
Параметр Buttons задается в виде суммы констант:
Константа1+ Константа2 +Константа3+ДопКонстанты
Константа3 указывает какая кнопка будет иметь фокус:
VbDefaultButtonl = 0 - первая, 256 - вторая, 512 - третья, 768 – четвертая.
Таблица 2.36
Константа1 | Значение | Константа2 | Значение |
VbOKOnly | 0 | VbCritical | 16 |
VbOKCancel | 1 | VbQuestion | 32 |
VbAbortRetrylgnore | 2 | VbExclamation | 48 |
VbYesNoCancel | 3 | VbInformation | 64 |
VbYesNo | 4 | | |
VbRetryCancel | 5 | | |
Отметим следующие значения констант ДопКонстанты:
VbSystemModal - делает окно модальным для операционной системы,
VbMsgBoxSetForeground - делает окно фоновым.
Пример использования функции MsgBox для подтверждения закрытия формы.
Private Sub Form_QueryUnload(Cancel As Integer,UnloadMode As Integer)
If MsgBox("Закончить?",vbQuestion+vbYesNo, Me.Caption)=vbNo _
Then Cancel=True
End Sub
2.8.3. Применение функций InputBox и MsgBox в проекте
Приведем пример использования окон диалога.
Будем изменять цвет формы, задавая константы цветов в окне ввода InputBox. Удобно задавать цвет, используя функцию RGB.
Функция RGB позволяет получить любой цвет, смешивая красную, зеленую и синюю компоненты различной интенсивности.
Синтаксис: RGB(Red, Green, Blue)
где Red, Green, Blue – целые числа от 0 до 255:
- Red – интенсивность красного;
- Green – интенсивность зеленого;
- Blue –интенсивность синего.
Расположим на форме элемент управления согласно рис. 2.32.

Рис. 2.32. Изменение цвета формы
Пример программного кода для изменения цвета формы.
Private Sub Command1_Click()
Dim btRed As Byte, btGreen As Byte, btBlue As Byte
' код для красного
On Error Resume Next
btRed=CByte(InputBox("Введите интенсивность красного – число от 0 до 255", _
"Ввод цвета формы", "255"))
If Err.Number <> 0 Then
MsgBox "Принято 255", vbCritical Or vbOKOnly, "Ошибка ввода красного"
btRed = 255
End If
Err.Clear
' аналогичный код для зеленого
' аналогичный код для синего
Caption = "красного:" & btRed & " зеленого:" & btGreen & " синего:" & btBlue
BackColor = RGB(btRed, btGreen, btBlue)
End Sub