Что нового

Необходимо создать окно которое будет выскакивать в заданое время.

Montekristo

Новичок
Сообщения
21
Репутация
0
Доброго дня суток :smile: Есть необходимость написать скрипт который будет в заданное время запускать гуи окно на весь экран и выдавать сообщение по типу "Выключи компутер". Ориентироваться он должен по времени компьютера (в общем на часах 18:00 выкидывает окно). Прошу пример если таков имеется или с чего начать читать. :-[
 

firex

AutoIT Гуру
Сообщения
943
Репутация
206
Montekristo
Код:
#include <GUIConstantsEx.au3>
#Include <WindowsConstants.au3>

HotKeySet( '{F6}', '_Exit' )

Global $_iHour = 18, $_iMin = 0
Global $_iSleep = _CalcSleep( $_iHour, $_iMin, @HOUR, @MIN )
; ---
_Sleep( $_iSleep )
_OnEvent()

Func _OnEvent()
	Local $_iWidth = @DesktopWidth - 100, $_iHeight = @DesktopHeight - 100
	; ---
	Local $_hGui = GUICreate('', $_iWidth, $_iHeight, 50, 50, $WS_POPUP, $WS_EX_TOOLWINDOW )

	GUICtrlCreateLabel( 'Выключите компьютер!', ($_iWidth / 2)-50, ($_iWidth / 2)-10, 100, 20 )
		GUICtrlSetColor( -1, 0xff0000 )
	; ---
	GUISetState()

	While 1
		Sleep( 10 )
	WEnd
EndFunc

; ===
Func _Sleep( $_iSleep )
	While $_iSleep
		$_iSleep -= 0.001
		Sleep( 60 )
	WEnd
EndFunc

Func _CalcSleep( $_iHour, $_iMin, $_iCurHour, $_iCurMin )
	Local $_iMins = ( 60 * $_iHour ) + $_iMin
	Local $_iCurMins = ( 60 * $_iCurHour ) + $_iCurMin
	If $_iMins <= $_iCurMins Then
		Return $_iCurMins - $_iMins
	Else
		Return ( ( 24 * 60 ) - $_iCurMins ) + $_iMins
	EndIf
EndFunc

Func _Exit()
	Exit 0
EndFunc
 

MnM

Post-Hardcore
Сообщения
679
Репутация
90
Montekristo
Код:
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
$GUI = GUICreate("", @DesktopWidth, @DesktopHeight,0,0,$ws_popup)
$l = GUICtrlCreateLabel("Долой задротство, вырубай компьютер", 124, 136, 850, 50)
GUICtrlSetFont(-1, 30, 800, 2, "MS Sans Serif")
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetBkColor(-1, 0x000000)
GUISetBkColor(0x000000,$GUI)
While 1
	If @HOUR=13 Then;у меня по мск сейчас 13 просто=)
		GUISetState(@SW_SHOW,$GUI)
	EndIf
	Switch GUIGetMsg()
		Case -3
			Exit
	EndSwitch
WEnd
 
Автор
M

Montekristo

Новичок
Сообщения
21
Репутация
0
Большое спасибо ребятки. Ожидал что ткнут носом где искать. А тут прям мне уже и решение дали ;D
ладно поковыряю посмотрю что да как. :IL_AutoIt_1:
 
Верх