Показать полную графическую версию : [решено] Какой флаг нужно выставить функции MsgBox чтобы окно всплывало без звука
Какой флаг нужно выставить функции MsgBox чтобы окно всплывало без звука
FlatX007
20-07-2010, 17:15
Звук воспроизводит система ... MsgBox тут непричём.
Просто скажем на masm32 это делается без проблем, на функции MsgBox ставится параметр ,
и окно всплывает без звука. Очень удобно, а то этот звук резкий иногда раздражает.
Ну ладно большое спасибо я просто теперь буду знать что на Autoit это не сделать.
я просто теперь буду знать что на Autoit это не сделать »
Кто сказал? :) это сделать, просто нужно свой MsgBox рисовать.
Просто скажем на masm32 это делается без проблем, на функции MsgBox ставится параметр , и окно всплывает без звука. »
Какой параметр? Приведите код. Я, как и Creat0R, не нашёл подобного параметра в MessageBox Function (Windows) (http://msdn.microsoft.com/en-us/library/ms645505(VS.85).aspx).
invoke MessageBox, 0, addr contener, SADD("Тест"), MB_ICONQUESTION
параметр - MB_ICONQUESTION - который имеет числовое значение - 20h
напоминаю это асемблер
Кажется нашёл
Оказывается со знаком вопроса оно всплывает без звука
MsgBox(32, "Test", "", 10)
параметр - MB_ICONQUESTION »
Ну так этот флаг задаёт вопросительную иконку, тогда можно так, и звука никакого нет:
#include (http://www.autoitscript.com/autoit3/docs/keywords.htm##include) <Constants.au3>
MsgBox (http://www.autoitscript.com/autoit3/docs/functions/MsgBox.htm)($MB_ICONQUESTION, 'Title', 'Text')
Ну так этот флаг задаёт вопросительную иконку, тогда можно так, и звука никакого нет: »
Ну это смотря у кого как звуковая схема настроена наверное, у меня звук при этом сообщении тоже присутствует.
FlatX007
23-07-2010, 00:14
Всё же проще нарисовать свои MsgBox в Koda и не парится нащёт всяких звуков.
проще нарисовать свои MsgBox в Koda »
В Koda такой (нормальный) MsgBox не нарисовать, свою версию прикрепил к сообщению.
Уважаемый Creat0R,
сообщение. Original_MsgBox_With_GUI.zip
Там два файла так вот при запуске Example.au3 Выдаёт ошибку
G:\Documents and Settings\assch\??????? ????\MsgBox.au3 (9) : ==> Can not redeclare a constant.:
Global Const $MB_ABORTRETRYIGNORE = 0x3
Global Const ^ ERROR
Версия у меня последняя 3361
Не подскажете в чём дело Очень хотелось бы посмотреть на ваш пример
madmasles
23-07-2010, 14:50
assch,
Я скачал тот же архив и 9-ая строка в MsgBox.au3 следующая: Global Const $MB_ABORTRETRYIGNORE = 0x2Ошибок никаких у меня не вылазит (Windows XP SP3).
при запуске Example.au3 Выдаёт ошибку »
Не должно, но можно закоментировать эту строчку.
madmasles
23-07-2010, 15:13
Creat0R,
В штатном MsgBox() в случае, если ни одна кнопка не была нажата и он закрывается по таймауту, возвращается -1, что иногда бывает очень удобно.
В Вашем _MsgBoxEx() (в Example.au3) в этом случае возвращается 6. Подскажите, пожалуйста, можно это исправить.
Попробывал этот пример на другом компе Пример открыл без проблем
Видимо при сносе старой версии возникла какая то ошибка
Но дело не в этом я не понял смысл этого примера Оба бокса открываются со звуком
в этом случае возвращается 6 »
Да, так задуманно, иногда и это нужно, добавлю @extended для определения возврата по Timeout'у.
Оба бокса открываются со звуком »
Я же не просто так в пример оставил:
$MB_MESSAGEBEEP = 1
$MB_TIMEOUTCOUNT = 1
;)
добавлю @extended для определения возврата по Timeout'у »
Добавил.
madmasles
23-07-2010, 16:26
Creat0R,
Огромное Вам спасибо! То, что доктор прописал!
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.