Вопрос № 23176: Доброе время суток, уважаемые Эксперты!
Подскажите плиз как сделать чтобы при определенном событии программа оказывалась сверху других?
С уважением,
Serzh mailto:serzh@mail2k.ru...
Вопрос № 23.176
Доброе время суток, уважаемые Эксперты!
Подскажите плиз как сделать чтобы при определенном событии программа оказывалась сверху других?
С уважением,
Serzh mailto:serzh@mail2k.ru
Отправлен: 07.07.2005, 16:44
Вопрос задал: Serzh (статус: Посетитель)
Всего ответов отправлено: 3
Отвечает: _Виталий
Здравствуйте, Serzh!
Т.е. вам нужно, чтобы форма была поверх всех остальных форм.
---------------Код формы----------------------------------------------------
Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
Ответ отправил: _Виталий (статус: 3-ий класс)
Отправлен: 07.07.2005, 18:41 Оценка за ответ: 5 Комментарий оценки: Огромное спасибо :)))
Отвечает: *Kot*
Здравствуйте, Serzh!
Очень просто! Объявляем функцию (См. приложение.), для установки режима "Поверх всех окон" вставляем в код следующую строку:
SetWindowPos FormName.hwnd, HWND_TOPMOST, 0, 0, 0, 0, FLAGS
Чтобы вернуть нормальный режим:
SetWindowPos FormName.hwnd, HWND_NOTOPMOST, 0, 0, 0, 0, FLAGS
Приложение:
Ответ отправил: *Kot* (статус: 6-ой класс)
Отправлен: 07.07.2005, 20:44 Оценка за ответ: 5 Комментарий оценки: Огромное спасибо :)))
Private Declare Sub SetWindowPos Lib "User32" _
(ByVal hWnd As Long, _
ByVal hWndInsertAfter As Long, _
ByVal X As Long, _
ByVal Y As Long, _
ByVal cx As Long, _
ByVal cy As Long, _
ByVal wFlags As Long)
Private Sub Timer1_timer()
If Time(NOW)=TimeValue("12:00:00") Then
SetWindowPos FormGlavnaya.hWnd, _
HWND_TOPMOST, 0, 0, 0, 0, _
SWP_NOACTIVATE Or SWP_SHOWWINDOW Or _
SWP_NOMOVE Or SWP_NOSIZE
End If
End Sub