Что нового

[Элементы GUI] Как правильно сделать лампочку?

Автор
Jan-Jak

Jan-Jak

Новичок
Сообщения
48
Репутация
1
сегодня пришло извещение. думаю вот за этим девайсом пойду завтра.
http://www.kernelchip.ru/Jerome.php


Добавлено:
Сообщение автоматически объединено:

Прошу прощения , но тема раскрыта не совсем полностью. Мне то хотелось что бы иконка менялась не на нажатие кнопочки, а на изменения в реестре. не получилось у меня , но как то так я пытался.
Код:
#include <GUIConstantsEx.au3>
Local $iconOn=@ScriptDir&"\on.ico",$iconOff=@ScriptDir&"\off.ico"
GUICreate("")
$ico=GUICtrlCreateIcon('',0,0,20,32,32)
$i =RegRead ( "HKEY_CURRENT_USER\Software\Houm\image\$image", "$image1" )
Select
Case $i = 1 
   $icon = $iconOn
Case $i <> 1
   $icon = $iconOff
   EndSelect
GUICtrlSetImage($ico,$icon)
GUISetState()
While 1
        If GUIGetMsg() = $GUI_EVENT_CLOSE Then
                Exit
            EndIf
WEnd
 

MnM

Post-Hardcore
Сообщения
679
Репутация
90
Код:
#include <GUIConstantsEx.au3>
Local $iconOn=@ScriptDir&"\on.ico",$iconOff=@ScriptDir&"\off.ico"
AdlibRegister("__SetImageLamp",1500);Каждую полторы сек будет вызыватся эта функция
GUICreate("")
$On = GUICtrlCreateButton("Включить", 50, 150, 100, 25)
$Off = GUICtrlCreateButton("Выключить", 150, 150, 100, 25)
$ico=GUICtrlCreateIcon('',0,0,20,32,32)
GUISetState()
Func _LampSet($param)
    Switch $param
        Case "On"
            RegDelete("HKEY_CURRENT_USER\Software\Houm\image\$image")
            RegWrite( "HKEY_CURRENT_USER\Software\Houm\image\$image", "$image1", "REG_SZ" ,'On')

        Case "Off"
            RegDelete("HKEY_CURRENT_USER\Software\Houm\image\$image")
            RegWrite( "HKEY_CURRENT_USER\Software\Houm\image\$image", "$image1", "REG_SZ" ,'Off')
    EndSwitch
EndFunc
While 1
	Switch GUIGetMsg()
		Case $GUI_EVENT_CLOSE
			Exit
		Case $On
			_LampSet("On")
		Case $Off
			_LampSet("Off")
	EndSwitch
WEnd
Func __SetImageLamp()
	Local $KeyRegister=RegRead("HKEY_CURRENT_USER\Software\Houm\image\$image","$image1")
	If $KeyRegister="on" Then
		GUICtrlSetImage($ico,$iconOn)
	ElseIf $KeyRegister="off" Then
		GUICtrlSetImage($ico,$iconOff)
	EndIf
EndFunc

Jan-Jak сказал(а):
тема раскрыта не совсем полностью
Признаю моя промашка, не совсем понял. Поправил, теперь каждые полторы секунды будет сканироваться параметр в реестре на наличие нужных значений.


Добавлено:
Сообщение автоматически объединено:

OffTopic:
Garret сказал(а):
Билеты, учить нужно!
Да не, я физкультуру по билетам когда сдавал вообще не учил но на 4 сдал=) мне просто для склероза своего :smile:
 
Автор
Jan-Jak

Jan-Jak

Новичок
Сообщения
48
Репутация
1
:IL_AutoIt_1: Вот теперь земной поклон за помощь. и всех благ.
 
Верх