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

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

Ответить
Настройки темы
[решено] Создание авто опроса событий GUI

Новый участник


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

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


Изменения
Автор: IronOleg
Дата: 09-11-2009
Вот есть прога:
Код: Выделить весь код
#include <Date.au3>
#include <GUIConstants.au3>

GUICreate("Дата и Время", 300, 100)
$datetime = GUICtrlCreateLabel("Текущая дата и время: " & _Now(), 1, 50)
GUISetState(@SW_SHOW)

While 1
  $msg = GUIGetMsg()
  
Select  
	Case $msg = $datetime
		GUICtrlSetData($datetime, "Текущая дата и время: " & _Now())
  
    Case $msg = $GUI_EVENT_CLOSE
      MsgBox(0, "GUI", "Выход...")
      ExitLoop
  EndSelect
WEnd
Мне нужно чтобы время обновлялось не при нажатии, а само. ТО есть были бы часы как встроенные в Windows XP. Помогите плиз.

-------
С уважением, Олег


Отправлено: 19:08, 09-11-2009

 

Аватара для Medic84

$AutoITer


Автор проектов


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

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


Код: Выделить весь код
#include <Date.au3>
#include <GUIConstants.au3>

GUICreate("Дата и Время", 300, 100)
$datetime = GUICtrlCreateLabel("Текущая дата и время: " & _Now(), 1, 50)
GUISetState(@SW_SHOW)

While 1
  $msg = GUIGetMsg()
Select
    Case $msg = $GUI_EVENT_CLOSE
      MsgBox(0, "GUI", "Выход...")
      ExitLoop
EndSelect
GUICtrlSetData($datetime, "Текущая дата и время: " & _Now())
WEnd
Можно так.
А лучше так:

Код: Выделить весь код
#include <Date.au3>
#include <GUIConstants.au3>

GUICreate("Дата и Время", 300, 100)
$datetime = GUICtrlCreateLabel("Текущая дата и время: " & _Now(), 1, 50)
GUISetState(@SW_SHOW)

AdlibEnable("Time",1000)

While 1
  $msg = GUIGetMsg()
Select
    Case $GUI_EVENT_CLOSE
      AdlibDisable()
	  Exit
EndSelect
WEnd

Func Time()
	GUICtrlSetData($datetime, "Текущая дата и время: " & _Now())
EndFunc

-------

AutoIT Русское сообщество| Моя лаборатория

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

Отправлено: 20:14, 09-11-2009 | #2



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

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


Аватара для Creat0R

Must AutoIt


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

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


Такой пример есть в справке к функций _TimeToTicks.

А вот более продвинуты пример:
Код: Выделить весь код
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
#include <Timers.au3>
;

Global $iTimer, $sTDelim = _DateTimeGetDelim()

$hGUI = GUICreate("Time Script", 220, 90, -1, -1, BitOR($WS_CAPTION, $WS_POPUP, $WS_SYSMENU))
$Time_Label = GUICtrlCreateLabel("Текущее время: " & _DateTimeGetCurrentTime($sTDelim), 40, 60)

$iTimer = _Timer_SetTimer($hGUI, 1000, "_Set_SystemTime_Proc")

GUISetState(@SW_SHOW, $hGUI)

While 1
    Switch GUIGetMsg()
        Case $GUI_EVENT_CLOSE
            _Timer_KillTimer($hGUI, $iTimer)
            Exit
    EndSwitch
WEnd

Func _Set_SystemTime_Proc($hWnd, $nMsg, $lParam, $wParam)
    GUICtrlSetData($Time_Label, "Текущее время: " & _DateTimeGetCurrentTime($sTDelim))
EndFunc

Func _DateTimeGetCurrentTime($sTDelim=":")
    Return @HOUR & $sTDelim & @MIN & $sTDelim & @SEC
EndFunc

Func _DateTimeGetDelim($sNowTime="")
    Local $sRetDelim = RegRead("HKEY_CURRENT_USER\Control Panel\International", "sTime")

    If $sRetDelim = "" And $sNowTime <> "" Then $sRetDelim = StringLeft(StringRegExpReplace($sNowTime, "[0-9]", ""), 1)
    If $sRetDelim = "" Then $sRetDelim = ":"

    Return $sRetDelim
EndFunc
P.S
А как оно связано с авто опросом элементов GUI?

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

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

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

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

Отправлено: 22:34, 09-11-2009 | #3


Новый участник


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

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


Цитата Creat0R:
P.S
А как оно связано с авто опросом элементов GUI? »
Я думал что есть что то типа такой функции

-------
С уважением, Олег


Отправлено: 13:05, 10-11-2009 | #4


Старожил


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

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


Цитата Creat0R:
Func _Set_SystemTime_Proc($hWnd, $nMsg, $lParam, $wParam)
GUICtrlSetData($Time_Label, "Текущее время: " & _DateTimeGetCurrentTime($sTDelim))
EndFunc »
А зачем нужны аргументы $hWnd, $nMsg, $lParam, $wParam, если в теле функции они не используются?

Отправлено: 19:37, 10-11-2009 | #5



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

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

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
[решено] Вопрос по GUI DenNC AutoIt 15 28-06-2009 21:28
Не работает GUI после выхода другова GUI sashadeg AutoIt 3 15-05-2009 22:03
Мышь - частота опроса мышки clop1000 Прочее железо 12 09-03-2008 11:31
Программа для непрерывного опроса удалённых серверов protoD Программное обеспечение Windows 15 04-02-2008 02:28
Создание пользователя в АД+авто добавление его в группу loger11 Microsoft Windows NT/2000/2003 5 19-04-2007 05:21




 
Переход