Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Отмена паузы при вызове меню из трея

Ответить
Настройки темы
[решено] Отмена паузы при вызове меню из трея

Пользователь


Сообщения: 78
Благодарности: 23

Профиль | Отправить PM | Цитировать


Доброго времени!
Вот заготовка скрипта:
Код: Выделить весь код
#Include <WinAPIEx.au3>
#include <GUIConstants.au3>

_WinAPI_EmptyWorkingSet(@AutoItPID) 

Opt('MustDeclareVars', 1)

Global $hGui, $Lab1, $Lab2, $exit, $length_hGui, $day, $mon, $nMsg

TraySetClick(16) 

;Opt('TrayAutoPause', 1)
Opt('TrayAutoPause', 0)
Opt("TrayMenuMode",1+2)
Opt("TrayOnEventMode", 1)

$exit = TrayCreateItem("Выход")
TrayItemSetOnEvent(-1, "_TrayEvent")

$hGui = GUICreate("Системное время", _Comparison_of_dates(), 23, -1, -1, $WS_POPUP, $WS_EX_TOOLWINDOW)
$Lab1 = GUICtrlCreateLabel(_today()&", "&_month(), 110, 00, 320, 25, -1, $GUI_WS_EX_PARENTDRAG) 
GUICtrlSetFont(-1, 15, 200, 1, 'Tahoma') 
$Lab2 = GUICtrlCreateLabel("", 05, 00, 105, 25, -1, $GUI_WS_EX_PARENTDRAG)
GUICtrlSetFont(-1, 15, 800, 1, 'Tahoma')

WinSetOnTop($hGui, "", 1)
GUISetState(@SW_SHOW, $hGui)

While 1
   $nMsg = GUIGetMsg()

   Local $systime = @HOUR&":"&@MIN&":"&@SEC

   If GUICtrlRead($Lab2) <> $systime Then GUICtrlSetData ( $Lab2,$systime)
Wend

Func _TrayEvent()
    Switch @TRAY_ID

        Case $exit
            _Exit()

    EndSwitch
EndFunc

Func _Comparison_of_dates()
;январь
   If _today()&", "&_month() = "воскресенье, " &@MDAY&" "&"января"&" "&@YEAR&"г." Then $length_hGui = "395"
   If _today()&", "&_month() = "понедельник, " &@MDAY&" "&"января"&" "&@YEAR&"г." Then $length_hGui = "400"
   If _today()&", "&_month() = "вторник, " &@MDAY&" "&"января"&" "&@YEAR&"г." Then $length_hGui = "355"
   If _today()&", "&_month() = "среда, " &@MDAY&" "&"января"&" "&@YEAR&"г." Then $length_hGui = "335"
   If _today()&", "&_month() = "четверг, " &@MDAY&" "&"января"&" "&@YEAR&"г." Then $length_hGui = "355"
   If _today()&", "&_month() = "пятница, " &@MDAY&" "&"января"&" "&@YEAR&"г." Then $length_hGui = "355"
   If _today()&", "&_month() = "суббота, " &@MDAY&" "&"января"&" "&@YEAR&"г." Then $length_hGui = "355"
;-----------------
;февраль
   If _today()&", "&_month() = "воскресенье, " &@MDAY&" "&"февраля"&" "&@YEAR&"г." Then $length_hGui = "400"
   If _today()&", "&_month() = "понедельник, " &@MDAY&" "&"февраля"&" "&@YEAR&"г." Then $length_hGui = "415"
   If _today()&", "&_month() = "вторник, " &@MDAY&" "&"февраля"&" "&@YEAR&"г." Then $length_hGui = "370"
   If _today()&", "&_month() = "среда, " &@MDAY&" "&"февраля"&" "&@YEAR&"г." Then $length_hGui = "350"
   If _today()&", "&_month() = "четверг, " &@MDAY&" "&"февраля"&" "&@YEAR&"г." Then $length_hGui = "370"
   If _today()&", "&_month() = "пятница, " &@MDAY&" "&"февраля"&" "&@YEAR&"г." Then $length_hGui = "375"
   If _today()&", "&_month() = "суббота, " &@MDAY&" "&"февраля"&" "&@YEAR&"г." Then $length_hGui = "370"
;------------------
;март
   If _today()&", "&_month() = "воскресенье, " &@MDAY&" "&"марта"&" "&@YEAR&"г." Then $length_hGui = "390"
   If _today()&", "&_month() = "понедельник, " &@MDAY&" "&"марта"&" "&@YEAR&"г." Then $length_hGui = "390"
   If _today()&", "&_month() = "вторник, " &@MDAY&" "&"марта"&" "&@YEAR&"г." Then $length_hGui = "345"
   If _today()&", "&_month() = "среда, " &@MDAY&" "&"марта"&" "&@YEAR&"г." Then $length_hGui = "325"
   If _today()&", "&_month() = "четверг, " &@MDAY&" "&"марта"&" "&@YEAR&"г." Then $length_hGui = "345"
   If _today()&", "&_month() = "пятница, " &@MDAY&" "&"марта"&" "&@YEAR&"г." Then $length_hGui = "350"
   If _today()&", "&_month() = "суббота, " &@MDAY&" "&"марта"&" "&@YEAR&"г." Then $length_hGui = "345"
;----------------
;апрель
   If _today()&", "&_month() = "воскресенье, " &@MDAY&" "&"апреля"&" "&@YEAR&"г." Then $length_hGui = "400"
   If _today()&", "&_month() = "понедельник, " &@MDAY&" "&"апреля"&" "&@YEAR&"г." Then $length_hGui = "405"
   If _today()&", "&_month() = "вторник, " &@MDAY&" "&"апреля"&" "&@YEAR&"г." Then $length_hGui = "360"
   If _today()&", "&_month() = "среда, " &@MDAY&" "&"апреля"&" "&@YEAR&"г." Then $length_hGui = "340"
   If _today()&", "&_month() = "четверг, " &@MDAY&" "&"апреля"&" "&@YEAR&"г." Then $length_hGui = "355"
   If _today()&", "&_month() = "пятница, " &@MDAY&" "&"апреля"&" "&@YEAR&"г." Then $length_hGui = "360"
   If _today()&", "&_month() = "суббота, " &@MDAY&" "&"апреля"&" "&@YEAR&"г." Then $length_hGui = "355"
;--------
;май
   If _today()&", "&_month() = "воскресенье, " &@MDAY&" "&"мая"&" "&@YEAR&"г." Then $length_hGui = "370"
   If _today()&", "&_month() = "понедельник, " &@MDAY&" "&"мая"&" "&@YEAR&"г." Then $length_hGui = "375"
   If _today()&", "&_month() = "вторник, " &@MDAY&" "&"мая"&" "&@YEAR&"г." Then $length_hGui = "325"
   If _today()&", "&_month() = "среда, " &@MDAY&" "&"мая"&" "&@YEAR&"г." Then $length_hGui = "305"
   If _today()&", "&_month() = "четверг, " &@MDAY&" "&"мая"&" "&@YEAR&"г." Then $length_hGui = "325"
   If _today()&", "&_month() = "пятница, " &@MDAY&" "&"мая"&" "&@YEAR&"г." Then $length_hGui = "330"
   If _today()&", "&_month() = "суббота, " &@MDAY&" "&"мая"&" "&@YEAR&"г." Then $length_hGui = "325"
;--------------------------
;июнь
   If _today()&", "&_month() = "воскресенье, " &@MDAY&" "&"июня"&" "&@YEAR&"г." Then $length_hGui = "380"
   If _today()&", "&_month() = "понедельник, " &@MDAY&" "&"июня"&" "&@YEAR&"г." Then $length_hGui = "385"
   If _today()&", "&_month() = "вторник, " &@MDAY&" "&"июня"&" "&@YEAR&"г." Then $length_hGui = "340"
   If _today()&", "&_month() = "среда, " &@MDAY&" "&"июня"&" "&@YEAR&"г." Then $length_hGui = "320"
   If _today()&", "&_month() = "четверг, " &@MDAY&" "&"июня"&" "&@YEAR&"г." Then $length_hGui = "340"
   If _today()&", "&_month() = "пятница, " &@MDAY&" "&"июня"&" "&@YEAR&"г." Then $length_hGui = "340"
   If _today()&", "&_month() = "суббота, " &@MDAY&" "&"июня"&" "&@YEAR&"г." Then $length_hGui = "340"
;------------------
;июль
   If _today()&", "&_month() = "воскресенье, " &@MDAY&" "&"июля"&" "&@YEAR&"г." Then $length_hGui = "380"
   If _today()&", "&_month() = "понедельник, " &@MDAY&" "&"июля"&" "&@YEAR&"г." Then $length_hGui = "385"
   If _today()&", "&_month() = "вторник, " &@MDAY&" "&"июля"&" "&@YEAR&"г." Then $length_hGui = "340"
   If _today()&", "&_month() = "среда, " &@MDAY&" "&"июля"&" "&@YEAR&"г." Then $length_hGui = "320"
   If _today()&", "&_month() = "четверг, " &@MDAY&" "&"июля"&" "&@YEAR&"г." Then $length_hGui = "340"
   If _today()&", "&_month() = "пятница, " &@MDAY&" "&"июля"&" "&@YEAR&"г." Then $length_hGui = "340"
   If _today()&", "&_month() = "суббота, " &@MDAY&" "&"июля"&" "&@YEAR&"г." Then $length_hGui = "340"
;-----------------------
;август
   If _today()&", "&_month() = "воскресенье, " &@MDAY&" "&"августа"&" "&@YEAR&"г." Then $length_hGui = "400"
   If _today()&", "&_month() = "понедельник, " &@MDAY&" "&"августа"&" "&@YEAR&"г." Then $length_hGui = "405"
   If _today()&", "&_month() = "вторник, " &@MDAY&" "&"августа"&" "&@YEAR&"г." Then $length_hGui = "360"
   If _today()&", "&_month() = "среда, " &@MDAY&" "&"августа"&" "&@YEAR&"г." Then $length_hGui = "340"
   If _today()&", "&_month() = "четверг, " &@MDAY&" "&"августа"&" "&@YEAR&"г." Then $length_hGui = "360"
   If _today()&", "&_month() = "пятница, " &@MDAY&" "&"августа"&" "&@YEAR&"г." Then $length_hGui = "365"
   If _today()&", "&_month() = "суббота, " &@MDAY&" "&"августа"&" "&@YEAR&"г." Then $length_hGui = "360"
;----------
;сентябрь
   If _today()&", "&_month() = "воскресенье, " &@MDAY&" "&"сентября"&" "&@YEAR&"г." Then $length_hGui = "410"
   If _today()&", "&_month() = "понедельник, " &@MDAY&" "&"сентября"&" "&@YEAR&"г." Then $length_hGui = "420"
   If _today()&", "&_month() = "вторник, " &@MDAY&" "&"сентября"&" "&@YEAR&"г." Then $length_hGui = "375"
   If _today()&", "&_month() = "среда, " &@MDAY&" "&"сентября"&" "&@YEAR&"г." Then $length_hGui = "355"
   If _today()&", "&_month() = "четверг, " &@MDAY&" "&"сентября"&" "&@YEAR&"г." Then $length_hGui = "375"
   If _today()&", "&_month() = "пятница, " &@MDAY&" "&"сентября"&" "&@YEAR&"г." Then $length_hGui = "380"
   If _today()&", "&_month() = "суббота, " &@MDAY&" "&"сентября"&" "&@YEAR&"г." Then $length_hGui = "375"
;-----------------
;октябрь
   If _today()&", "&_month() = "воскресенье, " &@MDAY&" "&"октября"&" "&@YEAR&"г." Then $length_hGui = "400"
   If _today()&", "&_month() = "понедельник, " &@MDAY&" "&"октября"&" "&@YEAR&"г." Then $length_hGui = "405"
   If _today()&", "&_month() = "вторник, " &@MDAY&" "&"октября"&" "&@YEAR&"г." Then $length_hGui = "360"
   If _today()&", "&_month() = "среда, " &@MDAY&" "&"октября"&" "&@YEAR&"г." Then $length_hGui = "340"
   If _today()&", "&_month() = "четверг, " &@MDAY&" "&"октября"&" "&@YEAR&"г." Then $length_hGui = "360"
   If _today()&", "&_month() = "пятница, " &@MDAY&" "&"октября"&" "&@YEAR&"г." Then $length_hGui = "365"
   If _today()&", "&_month() = "суббота, " &@MDAY&" "&"октября"&" "&@YEAR&"г." Then $length_hGui = "360"
;--------
;ноябрь
   If _today()&", "&_month() = "воскресенье, " &@MDAY&" "&"ноября"&" "&@YEAR&"г." Then $length_hGui = "400"
   If _today()&", "&_month() = "понедельник, " &@MDAY&" "&"ноября"&" "&@YEAR&"г." Then $length_hGui = "405"
   If _today()&", "&_month() = "вторник, " &@MDAY&" "&"ноября"&" "&@YEAR&"г." Then $length_hGui = "360"
   If _today()&", "&_month() = "среда, " &@MDAY&" "&"ноября"&" "&@YEAR&"г." Then $length_hGui = "340"
   If _today()&", "&_month() = "четверг, " &@MDAY&" "&"ноября"&" "&@YEAR&"г." Then $length_hGui = "355"
   If _today()&", "&_month() = "пятница, " &@MDAY&" "&"ноября"&" "&@YEAR&"г." Then $length_hGui = "360"
   If _today()&", "&_month() = "суббота, " &@MDAY&" "&"ноября"&" "&@YEAR&"г." Then $length_hGui = "355"
;--------------------
;декабрь
   If _today()&", "&_month() = "воскресенье, " &@MDAY&" "&"декабря"&" "&@YEAR&"г." Then $length_hGui = "410"
   If _today()&", "&_month() = "понедельник, " &@MDAY&" "&"декабря"&" "&@YEAR&"г." Then $length_hGui = "415"
   If _today()&", "&_month() = "вторник, " &@MDAY&" "&"декабря"&" "&@YEAR&"г." Then $length_hGui = "370"
   If _today()&", "&_month() = "среда, " &@MDAY&" "&"декабря"&" "&@YEAR&"г." Then $length_hGui = "350"
   If _today()&", "&_month() = "четверг, " &@MDAY&" "&"декабря"&" "&@YEAR&"г." Then $length_hGui = "370"
   If _today()&", "&_month() = "пятница, " &@MDAY&" "&"декабря"&" "&@YEAR&"г." Then $length_hGui = "370"
   If _today()&", "&_month() = "суббота, " &@MDAY&" "&"декабря"&" "&@YEAR&"г." Then $length_hGui = "370"

   Return $length_hGui
EndFunc

Func _today() 
 $day=@WDAY
  If @WDAY = 1 Then $day = "воскресенье"
  If @WDAY = 2 Then $day = "понедельник"
  If @WDAY = 3 Then $day = "вторник"
  If @WDAY = 4 Then $day = "среда"
  If @WDAY = 5 Then $day = "четверг"
  If @WDAY = 6 Then $day = "пятница"
  If @WDAY = 7 Then $day = "суббота"
 return $day 
EndFunc

Func _month() 
 $day=@WDAY                 
  If @MON = 01 Then $mon = "января"
  If @MON = 02 Then $mon = "февраля"
  If @MON = 03 Then $mon = "марта"
  If @MON = 04 Then $mon = "апреля"
  If @MON = 05 Then $mon = "мая"
  If @MON = 06 Then $mon = "июня"
  If @MON = 07 Then $mon = "июля"
  If @MON = 08 Then $mon = "августа"
  If @MON = 09 Then $mon = "сентября"
  If @MON = 10 Then $mon = "октября"
  If @MON = 11 Then $mon = "ноября"
  If @MON = 12 Then $mon = "декабря"
 return @MDAY&" "&$mon&" "&@YEAR&"г."
EndFunc

Func _Exit()  
    Exit
EndFunc
Что или как изменить (переделать), чтобы при вызове меню из системного трея часы продолжали "тикать"?
Буду рад любой помощи. Заранее благодарен...

Отправлено: 13:15, 02-06-2012

 

Аватара для ferget

Разный


Сообщения: 1294
Благодарности: 359

Профиль | Отправить PM | Цитировать


вот тут http://forum.oszone.net/thread-173724.html, можно посмотреть, одновременная работа
Это сообщение посчитали полезным следующие участники:

Отправлено: 14:00, 02-06-2012 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Аватара для Creat0R

Must AutoIt


Сообщения: 3054
Благодарности: 1009

Профиль | Сайт | Отправить PM | Цитировать


Делается через Timer, и код можно значительно уменьшить:

Код: Выделить весь код
#include <WinAPIEx.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Timers.au3>

Global $iFontSize = 15, $iFontWeight = 200, $iFontAttribs = 1, $sFontName = 'Tahoma'
Global $sDate_Str = _DateWDayToStr() & ", " & _DateMonthToStr()

_WinAPI_EmptyWorkingSet(@AutoItPID)

TraySetClick(16)

Opt("TrayAutoPause", 0)
Opt("TrayMenuMode", 1 + 2)
Opt("TrayOnEventMode", 1)

$iExit_TrayItem = TrayCreateItem("Выход")
TrayItemSetOnEvent(-1, "_TrayEvent")

$hGUI = GUICreate("Системное время", _GetDateGUIWidth($sDate_Str, $iFontSize, $iFontWeight, $iFontAttribs, $sFontName) + 110, 23, -1, -1, $WS_POPUP, BitOR($WS_EX_TOOLWINDOW, $WS_EX_TOPMOST))
$iLabel1 = GUICtrlCreateLabel($sDate_Str, 110, 00, 320, 25, -1, $GUI_WS_EX_PARENTDRAG)
GUICtrlSetFont(-1, $iFontSize, $iFontWeight, $iFontAttribs, $sFontName)
$iLabel2 = GUICtrlCreateLabel(@HOUR & ":" & @MIN & ":" & @SEC, 05, 0, 105, 25, -1, $GUI_WS_EX_PARENTDRAG)
GUICtrlSetFont(-1, $iFontSize, 800, $iFontAttribs, $sFontName)

GUISetState(@SW_SHOW, $hGUI)
$hTimer = _Timer_SetTimer($hGUI, 1000, "_SetTimeData_Proc")

While 1
    Sleep(100)
WEnd

Func _TrayEvent()
    Switch @TRAY_ID
        Case $iExit_TrayItem
            _Timer_KillTimer($hGUI, $hTimer)
            _Exit()
    EndSwitch
EndFunc

Func _SetTimeData_Proc($hWnd, $Msg, $iIDTimer, $dwTime)
    GUICtrlSetData($iLabel2, @HOUR & ":" & @MIN & ":" & @SEC)
EndFunc

Func _GetDateGUIWidth($sDate, $iSize = 8.5, $iWeight = 400, $iAttribs = 0, $sFontName = "")
    Local $hWnd, $hGUISwitch, $aCtrlSize, $aRetSize[2] = [0, 0]

    $hWnd = GUICreate($sDate, 0, 0, 0, 0, BitOR($WS_POPUP, $WS_MINIMIZE), BitOR($DS_MODALFRAME, $WS_EX_TRANSPARENT))
    $hGUISwitch = GUISwitch($hWnd)
    GUISetFont($iSize, $iWeight, $iAttribs, $sFontName, $hWnd)
    $aCtrlSize = ControlGetPos($hWnd, "", GUICtrlCreateLabel($sDate, 0, 0))
    GUIDelete($hWnd)
    GUISwitch($hGUISwitch)

    If Not IsArray($aCtrlSize) Then Return SetError(1, 0, 0)
    Return $aCtrlSize[2]
EndFunc

Func _DateWDayToStr()
    Local $aDay[7] = ["воскресенье", "понедельник", "вторник", "среда", "четверг", "пятница", "суббота"]
    Return $aDay[@WDAY-1]
EndFunc

Func _DateMonthToStr()
    Local $aMonth[12] = ["января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря"]
    Return @MDAY & " " & $aMonth[@MON-1] & " " & @YEAR & "г."
EndFunc

Func _Exit()
    Exit
EndFunc

-------
“Сделай так просто, как возможно, но не проще этого.”... “Ты никогда не решишь проблему, если будешь думать так же, как те, кто её создал.”

Альберт Эйнштейн

P.S «Не оказываю техподдержку через ПМ/ICQ, и по email - для этого есть форум. ©»

http://creator-lab.ucoz.ru/Images/Icons/autoit_icon.png Русское сообщество AutoIt | http://creator-lab.ucoz.ru/Images/Ic...eator_icon.png CreatoR's Lab | http://creator-lab.ucoz.ru/Images/Icons/oac_icon.png Opera AC Community

Это сообщение посчитали полезным следующие участники:

Отправлено: 19:05, 02-06-2012 | #3


Пользователь


Сообщения: 78
Благодарности: 23

Профиль | Отправить PM | Цитировать


ferget, спасибо, с Вашей помощью я немного разобрался с многопоточостью, хотя признаюсь - трудновато...
Creat0R, Вам огромное спасибо за исщерпывающий ответ и особенно за конкретный пример. На примерах всегда легче разобраться в тех или иных фунукциях...

Отправлено: 19:50, 02-06-2012 | #4


Пользователь


Сообщения: 78
Благодарности: 23

Профиль | Отправить PM | Цитировать


Доброго времени!
Возник ещё один вопрос. Как в предыдущем скрипте правильно организовать переход на следующие сутки.
Пытаюсь сделать добавив функцию _NewDayWatch(). Применить к label1 получилось, а дальше ступор, не получается применять новую ширину окна GUI, зависящую от новой даты:
Код: Выделить весь код
#include <WinAPIEx.au3>
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Timers.au3>

Global $iFontSize = 15, $iFontWeight = 200, $iFontAttribs = 1, $sFontName = 'Tahoma'
Global $sDate_Str = _DateWDayToStr() & ", " & _DateMonthToStr()

_WinAPI_EmptyWorkingSet(@AutoItPID)

TraySetClick(16)

Opt("TrayAutoPause", 0)
Opt("TrayMenuMode", 1 + 2)
Opt("TrayOnEventMode", 1)

$iExit_TrayItem = TrayCreateItem("Выход")
TrayItemSetOnEvent(-1, "_TrayEvent")

$hGUI = GUICreate("Системное время", _GetDateGUIWidth($sDate_Str, $iFontSize, $iFontWeight, $iFontAttribs, $sFontName) + 110, 23, -1, -1, $WS_POPUP, BitOR($WS_EX_TOOLWINDOW, $WS_EX_TOPMOST))
$iLabel1 = GUICtrlCreateLabel($sDate_Str, 110, 00, 320, 25, -1, $GUI_WS_EX_PARENTDRAG)
GUICtrlSetFont(-1, $iFontSize, $iFontWeight, $iFontAttribs, $sFontName)
$iLabel2 = GUICtrlCreateLabel(@HOUR & ":" & @MIN & ":" & @SEC, 05, 0, 105, 25, -1, $GUI_WS_EX_PARENTDRAG)
GUICtrlSetFont(-1, $iFontSize, 800, $iFontAttribs, $sFontName)

GUISetState(@SW_SHOW, $hGUI)
$hTimer = _Timer_SetTimer($hGUI, 1000, "_SetTimeData_Proc")

While 1
   _NewDayWatch()
    Sleep(100)
WEnd

Func _TrayEvent()
    Switch @TRAY_ID
        Case $iExit_TrayItem
            _Timer_KillTimer($hGUI, $hTimer)
            _Exit()
    EndSwitch
EndFunc

Func _SetTimeData_Proc($hWnd, $Msg, $iIDTimer, $dwTime)
    GUICtrlSetData($iLabel2, @HOUR & ":" & @MIN & ":" & @SEC)
EndFunc

Func _GetDateGUIWidth($sDate, $iSize = 8.5, $iWeight = 400, $iAttribs = 0, $sFontName = "")
    Local $hWnd, $hGUISwitch, $aCtrlSize, $aRetSize[2] = [0, 0]

    $hWnd = GUICreate($sDate, 0, 0, 0, 0, BitOR($WS_POPUP, $WS_MINIMIZE), BitOR($DS_MODALFRAME, $WS_EX_TRANSPARENT))
    $hGUISwitch = GUISwitch($hWnd)
    GUISetFont($iSize, $iWeight, $iAttribs, $sFontName, $hWnd)
    $aCtrlSize = ControlGetPos($hWnd, "", GUICtrlCreateLabel($sDate, 0, 0))
    GUIDelete($hWnd)
    GUISwitch($hGUISwitch)

    If Not IsArray($aCtrlSize) Then Return SetError(1, 0, 0)
    Return $aCtrlSize[2]
EndFunc

Func _DateWDayToStr()
    Local $aDay[7] = ["воскресенье", "понедельник", "вторник", "среда", "четверг", "пятница", "суббота"]
    Return $aDay[@WDAY-1]
EndFunc

Func _DateMonthToStr()
    Local $aMonth[12] = ["января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря"]
    Return @MDAY & " " & $aMonth[@MON-1] & " " & @YEAR & "г."
EndFunc

Func _NewDayWatch()
     $NextDate = _DateMonthToStr()

      While $NextDate = _DateMonthToStr()
         $NextDate = _DateMonthToStr()
         Sleep(100) 
     WEnd 

     GUICtrlSetData($iLabel1, _DateWDayToStr() & ", " & _DateMonthToStr()) 
EndFun

Func _Exit()
    Exit
EndFunc
Пока остановился на перезапуске скрипта, но хотелось бы более правильного решения.
Буду рад помощи. Заранее спасибо.

Отправлено: 19:15, 20-06-2012 | #5



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » AutoIt » [решено] Отмена паузы при вызове меню из трея

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Интерфейс - [решено] задержка при вызове контекстного меню файлов twisted1 Microsoft Windows 2000/XP 34 24-05-2017 11:10
Интерфейс - [решено] Зависает explorer.exe при вызове контекстного меню (Правая кнопка мыши) Expo37 Microsoft Windows 7 3 19-03-2011 01:09
Ошибка - подвисание при вызове программы по горячей клавише, прописанной в ярлыке меню пуск vxor Microsoft Windows 2000/XP 1 24-02-2011 23:19
Интерфейс - Обновляется рабочий стол при вызове контекстного меню Klinifin Microsoft Windows 7 11 11-01-2011 15:57
Разное - [решено] WinXP x64: Explorer.exe забирает всю оперативную память при вызове контекстного меню. Alex Cop Microsoft Windows 2000/XP 1 20-01-2010 12:10




 
Переход