Hatte aus Langeweile mal ein kleines wettertool gebastelt was mir das wetter meiner 4 wichtigsten orte ausgibt.
unsortiert und beta ist es noch.
[Blockierte Grafik: http://www9.picfront.org/picture/PUt3AYDQY/thb/wedda.JPG]
vll kann es ja wer gebrauchen.
Alter Code
-----------------------------------------------
Wetter UDF:
Spoiler anzeigen
#include <INet.au3>
#include <Misc.au3>
#include <string.au3>
#include <array.au3>
Func _getXML_Weather_data($pcode)
[/autoit] [autoit][/autoit] [autoit]$Postcode = $pcode
[/autoit] [autoit][/autoit] [autoit]$Api = "http://www.google.com/ig/api?weather=" & $Postcode & '&hl=de'
$XML_Source = _INetGetSource($Api)
$City = _StringBetween($XML_Source, '<city data="', '"/>')
$Wstatus = _StringBetween($XML_Source, '<condition data="', '"/>')
$Temp = _StringBetween($XML_Source, '<temp_c data="', '"/>')
$Wind = _StringBetween($XML_Source, '<wind_condition data="', '"/>')
$Humidity = _StringBetween($XML_Source, '<humidity data="', '"/>')
;MsgBox(0,"","" & $XML_Source)
Local $MyWeather[5]
[/autoit] [autoit][/autoit] [autoit]$MyWeather[0] = $City[0]
$MyWeather[1] = $Wstatus[0]
$MyWeather[2] = $Temp[0] & " °C"
$MyWeather[3] = $Wind[0]
$MyWeather[4] = $Humidity[0]
for $i = 0 to UBound($MyWeather) -1
ConsoleWrite($MyWeather[$i] & @CRLF)
Next
Return ($MyWeather)
[/autoit] [autoit][/autoit] [autoit]EndFunc ;==>_getXML_Weather_data
[/autoit]Wetter GUI:
Spoiler anzeigen
#include <udf_wetter.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
;Opt("WinTitleMatchMode", 2)
#Region ### START Koda GUI section ### Form=
[/autoit] [autoit][/autoit] [autoit]#Region --- CodeWizard generated code Start ---
$Form2 = GUICreate("Wetter 2.0 Beta |", 391, 288, 196, 250)
If Not IsDeclared('Snow_2') Then Local $Snow_2 = 0xeee9e9
If Not IsDeclared('Cornflower_Blue') Then Local $Cornflower_Blue = 0x000000
If Not IsDeclared('Royal_Blue_3') Then Local $Royal_Blue_3 = 0xCD0000
GUISetBkColor($Royal_Blue_3)
$Group1 = GUICtrlCreateGroup("Group1", 4, 8, 185, 129)
$Edit1 = GUICtrlCreateEdit("", 8, 24, 177, 109, BitOR($ES_AUTOHSCROLL, $ES_NOHIDESEL, $ES_WANTRETURN), 0)
GUICtrlSetBkColor($Edit1, $Cornflower_Blue)
GUICtrlSetColor($Edit1, $Snow_2)
GUICtrlSetColor($Group1, $Snow_2)
$Group2 = GUICtrlCreateGroup("Group2", 200, 8, 185, 129)
$Edit2 = GUICtrlCreateEdit("", 204, 24, 177, 109, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_WANTRETURN), 0)
GUICtrlSetBkColor($Edit2, $Cornflower_Blue)
GUICtrlSetColor($Edit2, $Snow_2)
GUICtrlSetColor($Group2, $Snow_2)
$Group3 = GUICtrlCreateGroup("Group3", 4, 148, 185, 129)
$Edit3 = GUICtrlCreateEdit("", 8, 164, 177, 109, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_WANTRETURN), 0)
GUICtrlSetBkColor($Edit3, $Cornflower_Blue)
GUICtrlSetColor($Edit3, $Snow_2)
GUICtrlSetColor($Group3, $Snow_2)
$Group4 = GUICtrlCreateGroup("Group4", 200, 148, 185, 129)
$Edit4 = GUICtrlCreateEdit("", 204, 164, 177, 109, BitOR($ES_AUTOHSCROLL, $ES_NOHIDESEL, $ES_WANTRETURN), 0)
GUICtrlSetBkColor($Edit4, $Cornflower_Blue)
GUICtrlSetColor($Edit4, $Snow_2)
GUICtrlSetColor($Group4, $Snow_2)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
[/autoit] [autoit][/autoit] [autoit];<Solingen
$Sg_Pcode = 42655
$Solingen = _getXML_Weather_data($Sg_Pcode)
If IsArray($Solingen) Then
GUICtrlSetData($Group1, $Solingen[0])
GUICtrlSetData($Edit1, $Solingen[1] & @CRLF & $Solingen[2] & @CRLF & $Solingen[3] & @CRLF & $Solingen[4] & @CRLF)
Else
Local $Mydummy[5]
$Mydummy[0] = "Stadt: N/A"
$Mydummy[1] = "WetterStatus: N/A"
$Mydummy[2] = "Temperatur: N/A"
$Mydummy[3] = "Wind: N/A"
$Mydummy[4] = "Luftfeuchtigkeit: N/A"
GUICtrlSetData($Group1, $Mydummy[0])
GUICtrlSetData($Edit1, $Mydummy[1] & @CRLF & $Mydummy[2] & @CRLF & $Mydummy[3] & @CRLF & $Mydummy[4] & @CRLF)
EndIf
;Solingen>
[/autoit] [autoit][/autoit] [autoit]Sleep(Random(50, 100))
[/autoit] [autoit][/autoit] [autoit];<Wuppertal
$wu_Pcode = 42117
$Wuppertal = _getXML_Weather_data($wu_Pcode)
If IsArray($Wuppertal) Then
GUICtrlSetData($Group2, $Wuppertal[0])
GUICtrlSetData($Edit2, $Wuppertal[1] & @CRLF & $Wuppertal[2] & @CRLF & $Wuppertal[3] & @CRLF & $Wuppertal[4] & @CRLF)
Else
Local $Mydummy[5]
$Mydummy[0] = "Stadt: N/A"
$Mydummy[1] = "WetterStatus: N/A"
$Mydummy[2] = "Temperatur: N/A"
$Mydummy[3] = "Wind: N/A"
$Mydummy[4] = "Luftfeuchtigkeit: N/A"
GUICtrlSetData($Group2, $Mydummy[0])
GUICtrlSetData($Edit1, $Mydummy[1] & @CRLF & $Mydummy[2] & @CRLF & $Mydummy[3] & @CRLF & $Mydummy[4] & @CRLF)
EndIf
;Wuppertal>
[/autoit] [autoit][/autoit] [autoit]Sleep(Random(50, 100))
[/autoit] [autoit][/autoit] [autoit];<Novi Vinodolski
$nv_Pcode = "Novi Vinodolski"
$Novi_Vinodolski = _getXML_Weather_data($nv_Pcode)
If IsArray($Novi_Vinodolski) Then
GUICtrlSetData($Group3, StringTrimRight($Novi_Vinodolski[0], 33))
GUICtrlSetData($Edit3, $Novi_Vinodolski[1] & @CRLF & $Novi_Vinodolski[2] & @CRLF & $Novi_Vinodolski[3] & @CRLF & $Novi_Vinodolski[4] & @CRLF)
Else
Local $Mydummy[5]
$Mydummy[0] = "Stadt: N/A"
$Mydummy[1] = "WetterStatus: N/A"
$Mydummy[2] = "Temperatur: N/A"
$Mydummy[3] = "Wind: N/A"
$Mydummy[4] = "Luftfeuchtigkeit: N/A"
GUICtrlSetData($Group3, $Mydummy[0])
GUICtrlSetData($Edit1, $Mydummy[1] & @CRLF & $Mydummy[2] & @CRLF & $Mydummy[3] & @CRLF & $Mydummy[4] & @CRLF)
EndIf
;Novi Vinodolski>
Sleep(Random(50, 100))
[/autoit] [autoit][/autoit] [autoit];<Saltum/Lökken
$lo_Pcode = "Saltum"
$loekken = _getXML_Weather_data($lo_Pcode)
If IsArray($loekken) Then
GUICtrlSetData($Group4, "Lökken")
GUICtrlSetData($Edit4, $loekken[1] & @CRLF & $loekken[2] & @CRLF & $loekken[3] & @CRLF & $loekken[4] & @CRLF)
Else
Local $Mydummy[5]
$Mydummy[0] = "Stadt: N/A"
$Mydummy[1] = "WetterStatus: N/A"
$Mydummy[2] = "Temperatur: N/A"
$Mydummy[3] = "Wind: N/A"
$Mydummy[4] = "Luftfeuchtigkeit: N/A"
GUICtrlSetData($Group4, $Mydummy[0])
GUICtrlSetData($Edit1, $Mydummy[1] & @CRLF & $Mydummy[2] & @CRLF & $Mydummy[3] & @CRLF & $Mydummy[4] & @CRLF)
EndIf
While 1
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$TimerStart = TimerInit()
[/autoit] [autoit][/autoit] [autoit]Do
$TimerDiff = TimerDiff($TimerStart)
Sleep(50)
Until $TimerDiff > Random(120000, 180000)
;GUICtrlSetData($Form2, "Wetter 0.2 Beta " & @HOUR & ":" & @MIN & ":" & @SEC)
;<Solingen
$Sg_Pcode = 42655
$Solingen = _getXML_Weather_data($Sg_Pcode)
If IsArray($Solingen) Then
GUICtrlSetData($Group1, $Solingen[0])
GUICtrlSetData($Edit1, $Solingen[1] & @CRLF & $Solingen[2] & @CRLF & $Solingen[3] & @CRLF & $Solingen[4] & @CRLF)
Else
Local $Mydummy[5]
$Mydummy[0] = "Stadt: N/A"
$Mydummy[1] = "WetterStatus: N/A"
$Mydummy[2] = "Temperatur: N/A"
$Mydummy[3] = "Wind: N/A"
$Mydummy[4] = "Luftfeuchtigkeit: N/A"
GUICtrlSetData($Group1, $Mydummy[0])
GUICtrlSetData($Edit1, $Mydummy[1] & @CRLF & $Mydummy[2] & @CRLF & $Mydummy[3] & @CRLF & $Mydummy[4] & @CRLF)
EndIf
;Solingen>
[/autoit] [autoit][/autoit] [autoit]Sleep(Random(50, 100))
[/autoit] [autoit][/autoit] [autoit];<Wuppertal
$wu_Pcode = 42117
$Wuppertal = _getXML_Weather_data($wu_Pcode)
If IsArray($Wuppertal) Then
GUICtrlSetData($Group2, $Wuppertal[0])
GUICtrlSetData($Edit2, $Wuppertal[1] & @CRLF & $Wuppertal[2] & @CRLF & $Wuppertal[3] & @CRLF & $Wuppertal[4] & @CRLF)
Else
Local $Mydummy[5]
$Mydummy[0] = "Stadt: N/A"
$Mydummy[1] = "WetterStatus: N/A"
$Mydummy[2] = "Temperatur: N/A"
$Mydummy[3] = "Wind: N/A"
$Mydummy[4] = "Luftfeuchtigkeit: N/A"
GUICtrlSetData($Group2, $Mydummy[0])
GUICtrlSetData($Edit1, $Mydummy[1] & @CRLF & $Mydummy[2] & @CRLF & $Mydummy[3] & @CRLF & $Mydummy[4] & @CRLF)
EndIf
;Wuppertal>
[/autoit] [autoit][/autoit] [autoit]Sleep(Random(50, 100))
[/autoit] [autoit][/autoit] [autoit];<Novi Vinodolski
$nv_Pcode = "Novi Vinodolski"
$Novi_Vinodolski = _getXML_Weather_data($nv_Pcode)
If IsArray($Novi_Vinodolski) Then
GUICtrlSetData($Group3, StringTrimRight($Novi_Vinodolski[0], 33))
GUICtrlSetData($Edit3, $Novi_Vinodolski[1] & @CRLF & $Novi_Vinodolski[2] & @CRLF & $Novi_Vinodolski[3] & @CRLF & $Novi_Vinodolski[4] & @CRLF)
Else
Local $Mydummy[5]
$Mydummy[0] = "Stadt: N/A"
$Mydummy[1] = "WetterStatus: N/A"
$Mydummy[2] = "Temperatur: N/A"
$Mydummy[3] = "Wind: N/A"
$Mydummy[4] = "Luftfeuchtigkeit: N/A"
GUICtrlSetData($Group3, $Mydummy[0])
GUICtrlSetData($Edit1, $Mydummy[1] & @CRLF & $Mydummy[2] & @CRLF & $Mydummy[3] & @CRLF & $Mydummy[4] & @CRLF)
EndIf
;Novi Vinodolski>
Sleep(Random(50, 100))
[/autoit] [autoit][/autoit] [autoit];<Saltum/Lökken
$lo_Pcode = "Saltum"
$loekken = _getXML_Weather_data($lo_Pcode)
If IsArray($loekken) Then
GUICtrlSetData($Group4, "Lökken")
GUICtrlSetData($Edit4, $loekken[1] & @CRLF & $loekken[2] & @CRLF & $loekken[3] & @CRLF & $loekken[4] & @CRLF)
Else
Local $Mydummy[5]
$Mydummy[0] = "Stadt: N/A"
$Mydummy[1] = "WetterStatus: N/A"
$Mydummy[2] = "Temperatur: N/A"
$Mydummy[3] = "Wind: N/A"
$Mydummy[4] = "Luftfeuchtigkeit: N/A"
GUICtrlSetData($Group4, $Mydummy[0])
GUICtrlSetData($Edit1, $Mydummy[1] & @CRLF & $Mydummy[2] & @CRLF & $Mydummy[3] & @CRLF & $Mydummy[4] & @CRLF)
EndIf
WinSetTitle("Wetter 2.0 Beta |", "", "Wetter 2.0 Beta | Letzte Akt.: " & @HOUR & ":" & @MIN & ":" & @SEC)
[/autoit] [autoit][/autoit] [autoit]WEnd
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit]
-----------------------------------------------
Alter kürzerer Code
Wetter UDF
Spoiler anzeigen
#include-once
#include <INet.au3>
#include <string.au3>
Func _getXML_Weather_data($pcode)
[/autoit] [autoit][/autoit] [autoit]$Postcode = $pcode
[/autoit] [autoit][/autoit] [autoit]$Api = "http://www.google.com/ig/api?weather=" & $Postcode & '&hl=de'
$XML_Source = _INetGetSource($Api)
$City = _StringBetween($XML_Source, '<city data="', '"/>')
$Wstatus = _StringBetween($XML_Source, '<condition data="', '"/>')
$Temp = _StringBetween($XML_Source, '<temp_c data="', '"/>')
$Wind = _StringBetween($XML_Source, '<wind_condition data="', '"/>')
$Humidity = _StringBetween($XML_Source, '<humidity data="', '"/>')
If IsArray($City) Then
[/autoit] [autoit][/autoit] [autoit]Local $MyWeather[5] = [$City[0], $Wstatus[0], $Temp[0] & " °C", $Wind[0], $Humidity[0]]
[/autoit] [autoit][/autoit] [autoit]Return ($MyWeather)
[/autoit] [autoit][/autoit] [autoit]Else
[/autoit] [autoit][/autoit] [autoit]Local $MyWeather[5] = ["Stadt: N/A", "WetterStatus: N/A", "Temperatur: N/A", "Wind: N/A", "Luftfeuchtigkeit: N/A"]
[/autoit] [autoit][/autoit] [autoit]Return ($MyWeather)
EndIf
EndFunc ;==>_getXML_Weather_data
Wetter GUI
Spoiler anzeigen
#include <udf_wetter.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
;Opt("WinTitleMatchMode", 2)
#Region ### START Koda GUI section ### Form=
[/autoit] [autoit][/autoit] [autoit]#Region --- CodeWizard generated code Start ---
$Form2 = GUICreate("Wetter 2.0 Beta |", 391, 288, 196, 250)
If Not IsDeclared('Snow_2') Then Local $Snow_2 = 0xeee9e9
If Not IsDeclared('Cornflower_Blue') Then Local $Cornflower_Blue = 0x000000
If Not IsDeclared('Royal_Blue_3') Then Local $Royal_Blue_3 = 0xCD0000
GUISetBkColor($Royal_Blue_3)
$Group1 = GUICtrlCreateGroup("Group1", 4, 8, 185, 129)
$Edit1 = GUICtrlCreateEdit("", 8, 24, 177, 109, BitOR($ES_AUTOHSCROLL, $ES_NOHIDESEL, $ES_WANTRETURN), 0)
GUICtrlSetBkColor($Edit1, $Cornflower_Blue)
GUICtrlSetColor($Edit1, $Snow_2)
GUICtrlSetColor($Group1, $Snow_2)
$Group2 = GUICtrlCreateGroup("Group2", 200, 8, 185, 129)
$Edit2 = GUICtrlCreateEdit("", 204, 24, 177, 109, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_WANTRETURN), 0)
GUICtrlSetBkColor($Edit2, $Cornflower_Blue)
GUICtrlSetColor($Edit2, $Snow_2)
GUICtrlSetColor($Group2, $Snow_2)
$Group3 = GUICtrlCreateGroup("Group3", 4, 148, 185, 129)
$Edit3 = GUICtrlCreateEdit("", 8, 164, 177, 109, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_WANTRETURN), 0)
GUICtrlSetBkColor($Edit3, $Cornflower_Blue)
GUICtrlSetColor($Edit3, $Snow_2)
GUICtrlSetColor($Group3, $Snow_2)
$Group4 = GUICtrlCreateGroup("Group4", 200, 148, 185, 129)
$Edit4 = GUICtrlCreateEdit("", 204, 164, 177, 109, BitOR($ES_AUTOHSCROLL, $ES_NOHIDESEL, $ES_WANTRETURN), 0)
GUICtrlSetBkColor($Edit4, $Cornflower_Blue)
GUICtrlSetColor($Edit4, $Snow_2)
GUICtrlSetColor($Group4, $Snow_2)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit];<Solingen
$Sg_Pcode = 42655
$Solingen = _getXML_Weather_data($Sg_Pcode)
GUICtrlSetData($Group1, $Solingen[0])
GUICtrlSetData($Edit1, $Solingen[1] & @CRLF & $Solingen[2] & @CRLF & $Solingen[3] & @CRLF & $Solingen[4] & @CRLF)
;Solingen>
[/autoit] [autoit][/autoit] [autoit]Sleep(Random(50, 100))
[/autoit] [autoit][/autoit] [autoit];<Wuppertal
$wu_Pcode = 42117
$Wuppertal = _getXML_Weather_data($wu_Pcode)
GUICtrlSetData($Group2, $Wuppertal[0])
GUICtrlSetData($Edit2, $Wuppertal[1] & @CRLF & $Wuppertal[2] & @CRLF & $Wuppertal[3] & @CRLF & $Wuppertal[4] & @CRLF)
;Wuppertal>
Sleep(Random(50, 100))
[/autoit] [autoit][/autoit] [autoit];<Novi Vinodolski
$nv_Pcode = "Novi Vinodolski"
$Novi_Vinodolski = _getXML_Weather_data($nv_Pcode)
GUICtrlSetData($Group3, StringTrimRight($Novi_Vinodolski[0], 33))
GUICtrlSetData($Edit3, $Novi_Vinodolski[1] & @CRLF & $Novi_Vinodolski[2] & @CRLF & $Novi_Vinodolski[3] & @CRLF & $Novi_Vinodolski[4] & @CRLF)
;Novi Vinodolski>
[/autoit] [autoit][/autoit] [autoit]Sleep(Random(50, 100))
[/autoit] [autoit][/autoit] [autoit];<Saltum/Lökken
$lo_Pcode = "Saltum"
$loekken = _getXML_Weather_data($lo_Pcode)
GUICtrlSetData($Group4, "Lökken")
GUICtrlSetData($Edit4, $loekken[1] & @CRLF & $loekken[2] & @CRLF & $loekken[3] & @CRLF & $loekken[4] & @CRLF)
While 1
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
[/autoit] [autoit][/autoit] [autoit][/autoit] [autoit][/autoit] [autoit]$TimerStart = TimerInit()
[/autoit] [autoit][/autoit] [autoit]Do
$TimerDiff = TimerDiff($TimerStart)
Sleep(50)
Until $TimerDiff > Random(120000, 180000)
[/autoit] [autoit][/autoit] [autoit];<Solingen
$Sg_Pcode = 42655
$Solingen = _getXML_Weather_data($Sg_Pcode)
GUICtrlSetData($Group1, $Solingen[0])
GUICtrlSetData($Edit1, $Solingen[1] & @CRLF & $Solingen[2] & @CRLF & $Solingen[3] & @CRLF & $Solingen[4] & @CRLF)
;Solingen>
[/autoit] [autoit][/autoit] [autoit]Sleep(Random(50, 100))
[/autoit] [autoit][/autoit] [autoit];<Wuppertal
$wu_Pcode = 42117
$Wuppertal = _getXML_Weather_data($wu_Pcode)
GUICtrlSetData($Group2, $Wuppertal[0])
GUICtrlSetData($Edit2, $Wuppertal[1] & @CRLF & $Wuppertal[2] & @CRLF & $Wuppertal[3] & @CRLF & $Wuppertal[4] & @CRLF)
;Wuppertal>
[/autoit] [autoit][/autoit] [autoit]Sleep(Random(50, 100))
[/autoit] [autoit][/autoit] [autoit];<Novi Vinodolski
$nv_Pcode = "Novi Vinodolski"
$Novi_Vinodolski = _getXML_Weather_data($nv_Pcode)
GUICtrlSetData($Group3, StringTrimRight($Novi_Vinodolski[0], 33))
GUICtrlSetData($Edit3, $Novi_Vinodolski[1] & @CRLF & $Novi_Vinodolski[2] & @CRLF & $Novi_Vinodolski[3] & @CRLF & $Novi_Vinodolski[4] & @CRLF)
;Novi Vinodolski>
[/autoit] [autoit][/autoit] [autoit]Sleep(Random(50, 100))
[/autoit] [autoit][/autoit] [autoit];<Saltum/Lökken
$lo_Pcode = "Saltum"
$loekken = _getXML_Weather_data($lo_Pcode)
GUICtrlSetData($Group4, "Lökken")
GUICtrlSetData($Edit4, $loekken[1] & @CRLF & $loekken[2] & @CRLF & $loekken[3] & @CRLF & $loekken[4] & @CRLF)
;Saltum/Lökken>
WinSetTitle("Wetter 2.0 Beta |", "", "Wetter 2.0 Beta | Letzte Akt.: " & @HOUR & ":" & @MIN & ":" & @SEC)
[/autoit] [autoit][/autoit] [autoit]WEnd
[/autoit]
-----------------------------------------------
Aktuell: aufgeräumt und gekürzter Code by Schnitzel
Spoiler anzeigen
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <INet.au3>
#include <string.au3>
Local $Mydummy[5] = ["Stadt: N/A", "WetterStatus: N/A", "Temperatur: N/A", "Wind: N/A", "Luftfeuchtigkeit: N/A"]
If Not IsDeclared('Snow_2') Then Local $Snow_2 = 0xeee9e9
If Not IsDeclared('Cornflower_Blue') Then Local $Cornflower_Blue = 0x000000
If Not IsDeclared('Royal_Blue_3') Then Local $Royal_Blue_3 = 0xCD0000
Global $Pcode[4][2] = [[42655, "Solingen"],[42117, "Wuppertal"],["Novi Vinodolski", "Novi Vinodolski"],["Saltum", "Lökken"]]
GUICreate("Wetter 2.0 Beta |", 391, 288, 196, 250)
GUISetBkColor($Royal_Blue_3)
Global $Group[4] = [GUICtrlCreateGroup("", 4, 8, 185, 129), GUICtrlCreateGroup("", 200, 8, 185, 129), GUICtrlCreateGroup("", 4, 148, 185, 129), GUICtrlCreateGroup("", 200, 148, 185, 129)]
For $i = 0 To 3
GUICtrlSetColor($Group[$i], $Snow_2)
Next
Global $Edit[4] = [GUICtrlCreateEdit("", 8, 24, 177, 109, BitOR($ES_AUTOHSCROLL, $ES_NOHIDESEL, $ES_WANTRETURN), 0), GUICtrlCreateEdit("", 204, 24, 177, 109, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_WANTRETURN), 0), GUICtrlCreateEdit("", 8, 164, 177, 109, BitOR($ES_AUTOVSCROLL, $ES_AUTOHSCROLL, $ES_WANTRETURN), 0), GUICtrlCreateEdit("", 204, 164, 177, 109, BitOR($ES_AUTOHSCROLL, $ES_NOHIDESEL, $ES_WANTRETURN), 0)]
For $i = 0 To 3
GUICtrlSetBkColor($Edit[$i], $Cornflower_Blue)
GUICtrlSetColor($Edit[$i], $Snow_2)
Next
GUISetState(@SW_SHOW)
UpdateAll(); für das erste befüllen
AdlibEnable("UpdateAll", 60000); Aktualisiert 1mal pro minute
While 1
$msg = GUIGetMsg()
Switch $msg
Case $GUI_EVENT_CLOSE
Exit
EndSwitch
WEnd
Func UpdateAll()
For $i = 0 To 3
SetData($i)
Next
WinSetTitle("Wetter 2.0 Beta |", "", "Wetter 2.0 Beta | Letzte Aktualisierung: " & @HOUR & ":" & @MIN)
EndFunc
Func SetData($index)
$aTmp = _getXML_Weather_data($Pcode[$index][0])
If IsArray($aTmp) Then
GUICtrlSetData($Group[$index], $Pcode[$index][1])
GUICtrlSetData($Edit[$index], $aTmp[1] & @CRLF & $aTmp[2] & @CRLF & $aTmp[3] & @CRLF & $aTmp[4] & @CRLF)
Else
GUICtrlSetData($Group[$index], $Mydummy[0])
GUICtrlSetData($Edit[$index], $Mydummy[1] & @CRLF & $Mydummy[2] & @CRLF & $Mydummy[3] & @CRLF & $Mydummy[4] & @CRLF)
EndIf
EndFunc
Func _getXML_Weather_data($pcode)
$Api = "http://www.google.com/ig/api?weather=" & $pcode & '&hl=de'
$XML_Source = _INetGetSource($Api)
$City = _StringBetween($XML_Source, '<city data="', '"/>')
$Wstatus = _StringBetween($XML_Source, '<condition data="', '"/>')
$Temp = _StringBetween($XML_Source, '<temp_c data="', '"/>')
$Wind = _StringBetween($XML_Source, '<wind_condition data="', '"/>')
$Humidity = _StringBetween($XML_Source, '<humidity data="', '"/>')
Local $MyWeather[5] = [$City[0], $Wstatus[0], $Temp[0] & " °C", $Wind[0], $Humidity[0]]
Return $MyWeather
EndFunc ;==>_getXML_Weather_data
hf & Lg Basti