Hallo an alle und rückwirkend ein gesundes neues Jahr
hier mal meine Version einer Binäruhr
Spoiler anzeigen
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <Date.au3>
HotKeySet("{ESC}", "ende")
opt("TrayIconHide",1)
Opt("GUIOnEventMode", 1)
Global $test[5][7]
global $bintime[7]
dim $ort[7]=[0,"22,16,10,4","23,17,11,5","24,18,12,6","25,19,13,7","26,20,14,8","27,21,15,9"]
$farbe=0xFFaa00
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 130, 120,@DesktopWidth-139,1,$WS_POPUP + $WS_SIZEBOX ,$WS_EX_TOOLWINDOW)
GUISetBkColor(0xFFaa00, $Form1)
GUISetOnEvent($GUI_EVENT_PRIMARYDOWN, "Move")
global $debug=GUICtrlCreateLabel("",10,80,200,40)
GUICtrlSetFont($debug,18,400,"","Comic Sans Ms")
for $a=1 to 4
for $b=1 to 6
$test[$a][$b]=$b*16&"|"&$a*15
next
Next
for $a=1 to 4
for $b=1 to 6
GUICtrlCreateradio("",stringtrimright($test[$a][$b],3),stringtrimleft($test[$a][$b],3),15,15)
GUICtrlSetState(-1,$GUI_HIDE)
next
Next
GUICtrlCreateGroup("",14,5,32,75)
GUICtrlCreateGroup("",46,5,32,75)
GUICtrlCreateGroup("",79,5,32,75)
GUISetState(@SW_SHOW)
#endregion
$SEC = @SEC
[/autoit] [autoit][/autoit] [autoit]While $SEC = @SEC
Sleep(10)
WEnd
Func Move()
ToolTip ( "ESC=Uhr weg" )
DllCall("User32.dll", "Bool", "PostMessage", "HWND", $Form1, "UINT", $WM_NCLBUTTONDOWN, "WPARAM", $HTCAPTION, "LPARAM", 0)
ToolTip ( "" )
EndFunc
While True
uhrzeit()
Sleep(100)
GUICtrlSetData($debug,_NowTime(5))
;farbe() ;;;---->>>>> hier
;GUISetBkColor($farbe,$Form1) ;;;---->>>>> flackerts
WEnd
Func uhrzeit()
If $SEC = @SEC Then Return
$SEC = @SEC
$zeit = _NowTime(5)
$zeit1 = StringSplit($zeit, ":")
zehner($zeit1[1],1)
zehner($zeit1[2],3)
zehner($zeit1[3],5)
$einer1=stringright($zeit1[1],1)
einer($einer1,2)
$einer2=stringright($zeit1[2],1)
einer($einer2,4)
$einer3=stringright($zeit1[3],1)
einer($einer3,6)
zeitanzeigen()
EndFunc
func zeitanzeigen()
for $b=1 to 6
$pnt=stringsplit($bintime[$b],"+",1)
$q=stringsplit($ort[$b],",",1)
for $a=1 to 4
if $pnt[$a]=1 then
GUICtrlSetState($q[$a],$GUI_SHOW)
else
GUICtrlSetState($q[$a],$GUI_HIDE)
endif
Next
Next
EndFunc
func einer(byref $einer,$p)
switch $einer
case $einer=0
$bintime[$p]="0+0+0+0"
case $einer=1
$bintime[$p]="1+0+0+0"
case $einer=2
$bintime[$p]="0+1+0+0"
case $einer=3
$bintime[$p]="1+1+0+0"
case $einer=4
$bintime[$p]="0+0+1+0"
case $einer=5
$bintime[$p]="1+0+1+0"
case $einer=6
$bintime[$p]="0+1+1+0"
case $einer=7
$bintime[$p]="1+1+1+0"
case $einer=8
$bintime[$p]="0+0+0+1"
case $einer=9
$bintime[$p]="1+0+0+1"
EndSwitch
EndFunc
func zehner(ByRef $zehner,$p)
Switch $zehner
case $zehner<10
$bintime[$p]="0+0+0+0"
case $zehner>9 and $zehner<20
$bintime[$p]="1+0+0+0"
case $zehner>19 and $zehner<30
$bintime[$p]="0+1+0+0"
case $zehner>29 and $zehner<40
$bintime[$p]="1+1+0+0"
case $zehner>39 and $zehner<50
$bintime[$p]="0+0+1+0"
case $zehner>49 and $zehner<60
$bintime[$p]="1+0+1+0"
EndSwitch
EndFunc
Func Ende()
Exit
EndFunc
func farbe()
$zeit = _NowTime(5)
$zeit1 = StringSplit($zeit, ":")
$farbe="0x"&Hex($zeit1[1],2)&Hex($zeit1[2],2)&Hex($zeit1[3],2)
EndFunc
vllt ein paar Tipps für das Flackerproblem aus Zeile 55 ???