Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Программирование, связанное с MS Office > Программное закрытие MsgBox - сообщения |
Автор: НеуФазендник 17.5.2006, 15:32 |
Прошу подсказать, каким образом программно создать диалоговое окно типа msgBox, чтобы затем его можно было бы так же программно удалить через определенное время, в случае, если не следует никакой реакции пользователя. Если вариантов нет, прошу посоветовать, как реализовать подобный диалог? ![]() |
Автор: Akina 17.5.2006, 16:43 |
Нарисовать такую форму и на нее таймер, который закроет ее по истечении заданного времени. |
Автор: Artiom 17.5.2006, 17:11 |
Здесь посмотри - привер на VB. наверное можно переделать на VBA http://forum.sources.ru/index.php?showtopic=49896 |
Автор: НеуФазендник 18.5.2006, 08:30 | ||
Спасибо, Artiom. Посмотрел ссылку.Идея ясна. Есть еще вопрос. Ключевыми (интересными мне) в приведенном коде являются две строки: 1. SendKeys "{enter}" делает ни что иное, как за пользователя жмет кнопку на диалоговом окне. 2.hMessageBox = FindWindow("#32770", MsgBoXCaption) вроде как определяет присутствие самого диалогового окна. Вопрос в том, откуда берется дескриптор #32770. И вообще, где взять справку по FindWindow() ? |
Автор: Artiom 18.5.2006, 10:37 |
В MSDN есть http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui/windowsuserinterface/windowing/windows/windowreference/windowfunctions/findwindow.asp |
Автор: Дмит 18.5.2006, 12:19 |
Можно без API: Dim WshShell As Object Set WshShell = CreateObject("WScript.Shell") WshShell.Popup "У вас всё в порядке?", 1, "Ответте на вопрос" 'popup(надпись, на сколько секунд выскакивает, заголовок, тип) |
Автор: НеуФазендник 25.5.2006, 16:22 | ||
Дмитрий, это то, что доктор прописал. Честно говоря меня ни один год мучал вопрос, как это реализовать, а поскольку букварей по VBA никогда не читал, довольствуясь англоязычной справкой VBA-Excel в крайних случаях, то никак не удавалось наткнуться на сею мудрую штуковину. Огромное спасибо. Теперь завалю свои формы всякими глупостями, вечно всплывающими в самые неподходящие моменты ![]() Добавлено @ 16:24
Artiom, спасибо за ссылочку! |