Функция MessageBoxIndirect
Declare Function MessageBoxIndirect Lib "user32.dll" Alias "MessageBoxIndirectA" (lpMsgBoxParams As MSGBOXPARAMS) As Long
MessageBoxIndirect создает, отображает и управляет окном сообщения на экране. Окно сообщения содержит определенные приложением сообщение и заголовок, а также любые комбинации предопределенных иконок и управляющих кнопок. Данная функция имеет расширенные возможности по сравнению с MessageBox и MessageBoxEx
Возвращаемое значение
В случае ошибки функция возвращает 0 (используйте GetLastError для получения кода ошибки). В успешном случае функция возвращает один из следующих флажков, определяющих нажатую кнопку:
- IDABORT = 3
- Нажата кнопка Стоп (Abort)
- IDCANCEL = 2
- Нажата кнопка Отмена (Cancel) (или пользователь закрыл окно клавишей Esc)
- IDCONTINUE = 11
- Windows 2000:Нажата кнопка Продолжить (Continue)
- IDIGNORE=5
- Нажата кнопка Пропустить (Ignore)
- IDNO=7
- Нажата кнопка Нет (No)
- IDOK=1
- Нажата кнопка OK
- IDRETRY=4
- Нажата кнопка Повтор (Retry)
- IDTRYAGAIN=10
- Windows 2000: Нажата кнопка Повторить снова (Try Again)
- IDYES=6
- Нажата кнопка Да (Yes)
Параметры
- lpMsgBoxParams
- Структура MSGBOXPARAMS, содержащая информацию о создаваемом сообщении
Пример
Dim MBP As MSGBOXPARAMS
Dim LDs As Long, Cnt As Long, sDrives As String
' Получим список доступных дисков
LDs = GetLogicalDrives
sDrives = "Доступные диски:"
For Cnt = 0 To 25
If (LDs And 2 ^ Cnt) <> 0 Then
sDrives = sDrives + " " + Chr$(65 + Cnt)
End If
Next Cnt
' Устанавливаем размер структуры
MBP.cbSize = Len(MBP)
' Устанавливаем стиль значка
MBP.dwStyle = MB_ICONASTERISK
MBP.hwndOwner = Me.hwnd
MBP.lpszText = sDrives
MBP.lpszCaption = "Русский_Проект"
' Выводим сообщение
MessageBoxIndirect MBP
Смотри также
MessageBox, MessageBoxEx
Категория
Диалоговые окна