![]() |
Внимание, важное сообщение: Дорогие Друзья!
В ноябре далекого 2001 года мы решили создать сайт и форум, которые смогут помочь как начинающим, так и продвинутым пользователям разобраться в операционных системах. В 2004-2006г наш проект был одним из самых крупных ИТ ресурсов в рунете, на пике нас посещало более 300 000 человек в день! Наша документация по службам Windows и автоматической установке помогла огромному количеству пользователей и сисадминов. Мы с уверенностью можем сказать, что внесли большой вклад в развитие ИТ сообщества рунета. Но... время меняются, приоритеты тоже. И, к сожалению, пришло время сказать До встречи! После долгих дискуссий было принято решение закрыть наш проект. 1 августа форум переводится в режим Только чтение, а в начале сентября мы переведем рубильник в положение Выключен Огромное спасибо за эти 24 года, это было незабываемое приключение. Сказать спасибо и поделиться своей историей можно в данной теме. С уважением, ваш призрачный админ, BigMac... |
|
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] как выдать сообщение не остонавливая скрипт до закрытия его пользователем? |
|
|
[решено] как выдать сообщение не остонавливая скрипт до закрытия его пользователем?
|
Пользователь Сообщения: 86 |
MsgBox устраивает всем, кроме того что до закрытия сообщения пользователем скрипт останавливается, а надо чтобы он не прекращал работать.
Как можно это реализовать, таймаут в MsgBox не предлагать |
|
Отправлено: 19:52, 07-01-2010 |
Кот Ти Сообщения: 7318
|
Профиль | Отправить PM | Цитировать Может просто создать дочернее окно, в котором будет только сообщение и кнопка? Скрипт при этом не должен останавливаться.
|
Отправлено: 20:08, 07-01-2010 | #2 |
Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети. Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля. |
Пользователь Сообщения: 86
|
Профиль | Отправить PM | Цитировать так там будит то же цыкл, который будит следить не нажата ли кнопка, получится то же самое что и с MsgBox.
|
Отправлено: 20:11, 07-01-2010 | #3 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать $iRet = _MsgBoxEx(36, "My Title", "Message", 10, 0, "_SetData") MsgBox(64, "", "Returned Value is: " & $iRet) Func _SetData($iCount) ConsoleWrite("The script is not paused " & $iCount & " second(s)" & @LF) EndFunc Func _MsgBoxEx($iType, $sTitle, $sText, $iTimeOut=0, $hWnd=0, $sCallBackFunc="") Local $sAu3Line = '"ConsoleWrite(MsgBox(' & $iType & ', ''' & $sTitle & ''', ''' & $sText & ''', ' & _ $iTimeOut & ', ' & $hWnd & '))"' Local $iAu3PID = Run(@AutoItExe & ' /AutoIt3ExecuteLine ' & $sAu3Line, '', @SW_SHOW, 6) Local $iStdOutRead Local $iTimerInit = TimerInit(), $iTimerDiff = Round(TimerDiff($iTimerInit)/1000, 0), $iLastTimer = $iTimerDiff Local $iOld_WWD_Opt = Opt("WinWaitDelay", 0) WinWait($sTitle, $sText) Opt("WinWaitDelay", $iOld_WWD_Opt) While 1 $iStdOutRead &= StdoutRead($iAu3PID) If @error <> 0 Then ExitLoop If $sCallBackFunc <> "" Then $iTimerDiff = Round(TimerDiff($iTimerInit)/1000, 0) If $iLastTimer <> $iTimerDiff Then $iLastTimer = $iTimerDiff Call($sCallBackFunc, $iTimerDiff) EndIf EndIf Sleep(1) WEnd Return $iStdOutRead EndFunc |
------- Отправлено: 23:43, 07-01-2010 | #4 |
Пользователь Сообщения: 86
|
Профиль | Отправить PM | Цитировать Спасибо
|
|
Отправлено: 00:02, 08-01-2010 | #5 |
Новый участник Сообщения: 26
|
Профиль | Отправить PM | Цитировать andr_mozg
Я для этих целей использую функцию SplashTextOn()... А когда надо убрать сообщение (в любом месте скрипта) вызываю SplashOff()... |
Отправлено: 08:59, 09-01-2010 | #6 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать |
------- Отправлено: 11:50, 09-01-2010 | #7 |
Новый участник Сообщения: 26
|
Профиль | Отправить PM | Цитировать Creat0R
Тогда по-другому: ; НАЧАЛО $GUI1=GUICreate("",300,300) $EDIT=GUICtrlCreateEdit("",0,0,300,200,0x1000) $BUTTON1=GUICtrlCreateButton("MsgBox",0,200,300,50) $BUTTON2=GUICtrlCreateButton("GUI2",0,250,300,50) GUISetState(@SW_SHOW,$GUI1) $GUI2=GUICreate("Внимание!",200,100,-1,-1,0x00400000) $LABEL1=GUICtrlCreateLabel("Приложение продолжает работу"&@CRLF&"Нажмите OK, чтобы закрыть окно",10,10) $BUTTON0=GUICtrlCreateButton("Ok",-1,45,50,25) $R="" While true Switch GUIGetMsg() Case -3 ExitLoop Case $BUTTON1 MsgBox(0,"Внимание!","Приложение заблокировано"&@CRLF&"Нажмите OK, чтобы закрыть окно") Case $BUTTON2 GUISetState(@SW_SHOW,$GUI2) Case $BUTTON0 GUISetState(@SW_HIDE,$GUI2) EndSwitch $R=$R&Chr(Random(32,127,1)) GUICtrlSetData($EDIT,$R) Sleep(50) Wend ; КОНЕЦ |
Отправлено: 18:28, 09-01-2010 | #8 |
Must AutoIt Сообщения: 3054
|
Профиль | Сайт | Отправить PM | Цитировать Цитата snoitaleR:
|
|
------- Отправлено: 18:36, 09-01-2010 | #9 |
Новый участник Сообщения: 26
|
Профиль | Отправить PM | Цитировать Creat0R
Не в этом дело... Мой пример сначала не подходил, а теперь подходит... ![]() |
Отправлено: 18:42, 09-01-2010 | #10 |
|
![]() |
Участник сейчас на форуме |
![]() |
Участник вне форума |
![]() |
Автор темы |
![]() |
Сообщение прикреплено |
| |||||
Название темы | Автор | Информация о форуме | Ответов | Последнее сообщение | |
[решено] Как написать програмку для открытия и закрытия DVD-RW, если буква диска неизвестна? | Fraks | AutoIt | 11 | 30-08-2009 18:40 | |
Доступ - [решено] Перезагрузка после закрытия программы | hsperm | Microsoft Windows 2000/XP | 2 | 21-07-2009 09:49 | |
V. 5.5/2000/2003 - [решено] Сообщение еще не доставлено. Microsoft Exchange продолжит попытки доставить сообщение | exo | Microsoft Exchange Server | 1 | 28-05-2009 23:23 | |
Разное - AutoIt Помогите написать скрипт закрытия окна выполнения сценария в трее | ShadowMas | Программирование и базы данных | 1 | 05-07-2008 14:04 | |
нужен скрипт для добавления сайта в избранное и сделать его стартовой страницей | Denis Shutka | Вебмастеру | 2 | 30-01-2005 11:03 |
|