Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Автоматическое закрытие MsgBox'a 
:(
    Опции темы
cardinal
Дата 27.5.2005, 18:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Инженер
****


Профиль
Группа: Экс. модератор
Сообщений: 6003
Регистрация: 26.3.2002
Где: Германия

Репутация: 19
Всего: 99



Код

' в модуль запишем следующее
Private Declare Function KillTimer Lib "user32" _
   (ByVal hWnd As Long, ByVal nIDEvent As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias _
   "FindWindowA" (ByVal lpClassName As String, _
   ByVal lpWindowName As String) As Long
Private Declare Function SetForegroundWindow Lib "user32" _
   (ByVal hWnd As Long) As Long

Public Const NV_CLOSEMSGBOX As Long = &H5000&

Public Sub TimerProc(ByVal hWnd As Long, ByVal uMsg As Long, _
   ByVal idEvent As Long, ByVal dwTime As Long)

   KillTimer hWnd, idEvent
   Select Case idEvent
      Case NV_CLOSEMSGBOX 'хотим закрыть окно после 4 секунд
         Dim hMessageBox As Long
        'чтобы MsgBox мог закрыться нормально надо определить по кокому имени будет закрываться
         hMessageBox = FindWindow("#32770", "MsgBox")
         If hMessageBox Then
            Call SetForegroundWindow(hMessageBox)
            SendKeys "{enter}"
        End If
    End Select

End Sub

Код

' на форму напишите следующее
Private Declare Function SetTimer Lib "user32" _
   (ByVal hWnd As Long, ByVal nIDEvent As Long, _
   ByVal uElapse As Long, ByVal lpTimerFunc As Long) As Long

Private Sub cmdShowMsg_Click()

    'здесь нам настраиваится час 4 секунды (4000 милисекунд)
    SetTimer hWnd, NV_CLOSEMSGBOX, 4000, AddressOf TimerProc
   
    If MsgBox("Сообщение автоматически закроеться после 4 секунд. _
      Повторить или конец ?", vbRetryCancel + vbDefaultButton1, _
      "MsgBox") = vbRetry Then
         MsgBox "Повторить"
    Else
         MsgBox "Конец"
    End If
 
End Sub



--------------------
Немецкая оппозиция потребовала упростить натурализацию иммигрантов
В моем блоге: Разные истории из жизни в Германии

"Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино".  А. и Б. Стругацкие
PM   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "VB6"
Akina

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по VB обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • Используйте теги [code=vb][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | VB6 | Следующая тема »


 




[ Время генерации скрипта: 0.0736 ]   [ Использовано запросов: 23 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.