DOWNLOAD
Der Source liegt zwar dabei, aber es wurde in der SB erwünscht. Auch wenn euch der Source wenig Bringt.
Source
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <IE.au3>
#include <String.au3>
#include <AVIConstants.au3>
#include <ButtonConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <GUIListBox.au3>
$IE = _IECreateEmbedded()
Global $html
Local $sFileName = "start.html"
Local $1FileName = "seastart.html"
Local $nBytesRead = @extended
Dim $adr, $stre, $plz, $stadt, $aland
$url0 = "http://local.yahooapis.com/MapsService/V1/geocode?appid=YD-9G7bey8_JXxQP6rxl.fBFGgCdNjoDMACQA--&address=" & $adr
$url1 = "&street=" & $stre
$url2 = "&zip=" & $plz
$url3 = "&state=" & $stadt
$url4 = "&country=" & $aland
$url = $url0 & $url1 & $url2 & $url3 & $url4
$map = 100
Local $nBytesRead = @extended
$INI = @ScriptDir & "\Data\Einstellungen.ini"
$Postleitzahl = IniRead($INI, "PLZ", "Wert", "")
$iSTADT = IniRead($INI, "CITY", "Wert", "")
If $Postleitzahl = "1337" Then
$Postleitzahl = InputBox("Ihre Postleitzahl", "Da Sie das Programm zum ersten mal starten, sind Sie aufgefordert Ihre Postleitzahl zu schreiben." & @CRLF & @CRLF & "So wird das Programm ihr Persöhnliches Wetter herraus finden und ihren Ort anzeigen!" & @CRLF & @CRLF & "Viel Spaß " & @CRLF, "Ihre Postleitzahl", " ", "350", "260", "-1", "-1")
$states = "&state=" & $Postleitzahl
EndIf
If $iSTADT = "1337" Then
$iSTADT = InputBox("Ihren Wohnort", "Da Sie das Programm zum ersten mal starten, sind Sie aufgefordert Ihren Wohnort zu schreiben." & @CRLF & @CRLF & "So wird das Programm ihr Persöhnliches Wetter herraus finden und ihren Ort anzeigen!" & @CRLF & @CRLF & "Viel Spaß " & @CRLF, "Ihren Wohnort", " ", "350", "260", "-1", "-1")
EndIf
$wURL = "http://www.google.com/ig/api?weather=" & $iSTADT & "&hl=de"
IniWrite($INI, "PLZ", "Wert", $Postleitzahl)
IniWrite($INI, "CITY", "Wert", $iSTADT)
$Form1 = GUICreate("Open World Browser by Simon K. - EUROS4YOU.COM", 1204, 836, 118, 112)
$Pic1 = GUICtrlCreateObj($IE, 0, 136, 1201, 697)
$city = GUICtrlCreateInput("", 16, 24, 201, 21)
$street = GUICtrlCreateInput("", 16, 48, 201, 21)
$num = GUICtrlCreateInput("", 224, 48, 57, 21)
$zip = GUICtrlCreateInput("", 288, 48, 65, 21)
$Group1 = GUICtrlCreateGroup("Stadt, Straße, Hausnummer, Postleitzahl", 8, 8, 361, 73)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Group2 = GUICtrlCreateGroup("Land", 376, 8, 241, 73)
$land = GUICtrlCreateInput("", 384, 24, 225, 21)
$search = GUICtrlCreateButton("Suche", 384, 48, 227, 25, $WS_GROUP)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Button1 = GUICtrlCreateButton("Zum Mond //Geht nicht", 664, 8, 529, 25, $WS_GROUP)
$Button2 = GUICtrlCreateButton("Zur Welt", 664, 38, 529, 25, $WS_GROUP)
$Button3 = GUICtrlCreateButton("Zur See Karte", 664, 67, 529, 25, $WS_GROUP)
$Button4 = GUICtrlCreateButton("Route erstellen //Geht nicht", 664, 96, 529, 25, $WS_GROUP)
$einstellungen = GUICtrlCreateMenu("Einstellungen")
$eoeffnen = GUICtrlCreateMenuItem("Einstellungen Öffnen", $einstellungen)
$Extras = GUICtrlCreateMenu("Extras")
$Extraswetter = GUICtrlCreateMenuItem("Wetter", $Extras)
$lern = GUICtrlCreateMenu("Lernen")
$lVideos = GUICtrlCreateMenuItem("Videos", $lern)
$help = GUICtrlCreateMenu("Hilfe")
$hHelp = GUICtrlCreateMenuItem("Hilfe", $help)
$hAbout = GUICtrlCreateMenuItem("About/Über", $help)
GUISetState(@SW_SHOW)
_Wohnort()
_IENavigate($IE, @ScriptDir & "/start.html")
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button2
$map = 100
_IENavigate($IE, @ScriptDir & "/start.html")
Case $Button3
$map = 10
_IENavigate($IE, @ScriptDir & "/seastart.html")
Case $search
If $map = 10 Then
$func = _Sea()
Else
$func = _World()
EndIf
Case $hAbout
$about = FileOpen("about.owb", 0)
$aabout = FileRead($about)
FileClose($about)
MsgBox(64, "Über OpenWorldBrowser", $aabout)
Case $hHelp
MsgBox(0, "Hilfe", "Derzeit ist die Hilfe noch nicht geschrieben!")
Case $Extraswetter
_Weather()
Case $lVideos
_Videos()
EndSwitch
WEnd
Func _World()
$stre = GUICtrlRead($street)
$plz = GUICtrlRead($zip)
$stadt = GUICtrlRead($city)
$aland = GUICtrlRead($land)
$url0 = "http://local.yahooapis.com/MapsService/V1/geocode?appid=YD-9G7bey8_JXxQP6rxl.fBFGgCdNjoDMACQA--&address=" & $adr
$url1 = "&street=" & $stre
$url2 = "&zip=" & $plz
$url3 = "&state=" & $stadt
$url4 = "&country=" & $aland
$url = $url0 & $url1 & $url2 & $url3 & $url4
$oData = InetRead($url)
$sData = $nBytesRead & @CRLF & @CRLF & BinaryToString($oData)
$xmllon = _StringBetween($sData, "<Longitude>", "</Longitude>")
If IsArray($xmllon) Then
$xmllon = $xmllon[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!1")
Exit
EndIf
$xmllat = _StringBetween($sData, "<Latitude>", "</Latitude>")
If IsArray($xmllat) Then
$xmllat = $xmllat[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!2")
Exit
EndIf
ConsoleWrite("XML " & $xmllon & " " & $xmllat & @CRLF)
$hFile = FileOpen($sFileName, 0)
$sText = FileRead($hFile)
FileClose($hFile)
$Lon = _StringBetween($sText, "var lon =", ";")
If IsArray($Lon) Then
$Lon = $Lon[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!3")
Exit
EndIf
$Lat = _StringBetween($sText, "var lat =", ";")
If IsArray($Lat) Then
$Lat = $Lat[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!4")
Exit
EndIf
$Zoom = _StringBetween($sText, "var zoom = ", ";")
If IsArray($Zoom) Then
$Zoom = $Zoom[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!3")
Exit
EndIf
If Not $aland = 0 Then
$sZoom = 5
Else
$sZoom = 7
EndIf
If Not $stadt = 0 Then
$sZoom = 10
Else
$sZoom = 7
EndIf
$sText = StringReplace($sText, $Zoom, $sZoom)
$sText = StringReplace($sText, $Lon, $xmllon)
$sText = StringReplace($sText, $Lat, $xmllat)
ConsoleWrite("HTML " & $Lon & " " & $Lat & @CRLF)
$hFile = FileOpen($sFileName, 2)
FileWrite($hFile, $sText)
FileClose($hFile)
_IENavigate($IE, @ScriptDir & "/start.html")
EndFunc ;==>_World
Func _Sea()
$stre = GUICtrlRead($street)
$plz = GUICtrlRead($zip)
$stadt = GUICtrlRead($city)
$aland = GUICtrlRead($land)
$url0 = "http://local.yahooapis.com/MapsService/V1/geocode?appid=YD-9G7bey8_JXxQP6rxl.fBFGgCdNjoDMACQA--&address=" & $adr
$url1 = "&street=" & $stre
$url2 = "&zip=" & $plz
$url3 = "&state=" & $stadt
$url4 = "&country=" & $aland
$url = $url0 & $url1 & $url2 & $url3 & $url4
$oData = InetRead($url)
$sData = $nBytesRead & @CRLF & @CRLF & BinaryToString($oData)
$xmllon = _StringBetween($sData, "<Longitude>", "</Longitude>")
If IsArray($xmllon) Then
$xmllon = $xmllon[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!1")
Exit
EndIf
$xmllat = _StringBetween($sData, "<Latitude>", "</Latitude>")
If IsArray($xmllat) Then
$xmllat = $xmllat[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!2")
Exit
EndIf
ConsoleWrite("XML " & $xmllon & " " & $xmllat & @CRLF)
$hFile = FileOpen($1FileName, 0)
$sText = FileRead($hFile)
FileClose($hFile)
$Lon = _StringBetween($sText, "var lon =", ";")
If IsArray($Lon) Then
$Lon = $Lon[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!3")
Exit
EndIf
$Lat = _StringBetween($sText, "var lat =", ";")
If IsArray($Lat) Then
$Lat = $Lat[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!4")
Exit
EndIf
$Zoom = _StringBetween($sText, "var zoom = ", ";")
If IsArray($Zoom) Then
$Zoom = $Zoom[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!3")
Exit
EndIf
If Not $aland = 0 Then
$sZoom = 5
Else
$sZoom = 7
EndIf
If Not $stadt = 0 Then
$sZoom = 10
Else
$sZoom = 7
EndIf
$sText = StringReplace($sText, $Zoom, $sZoom)
$sText = StringReplace($sText, $Lon, $xmllon)
$sText = StringReplace($sText, $Lat, $xmllat)
ConsoleWrite("HTML " & $Lon & " " & $Lat & @CRLF)
$hFile = FileOpen($1FileName, 2)
FileWrite($hFile, $sText)
FileClose($hFile)
_IENavigate($IE, @ScriptDir & "/seastart.html")
EndFunc ;==>_Sea
Func _Weather()
$WetterForm = GUICreate("Wetter", 201, 90, 188, 124)
$Label1 = GUICtrlCreateLabel("", 16, 16, 178, 17)
$Label2 = GUICtrlCreateLabel("", 16, 40, 178, 17)
$Label3 = GUICtrlCreateLabel("", 16, 64, 178, 17)
$Group1 = GUICtrlCreateGroup("Wetter", 6, 0, 193, 89)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW, $WetterForm)
$oData = InetRead($wURL)
$sData = $nBytesRead & @CRLF & @CRLF & BinaryToString($oData)
$ctData = _StringBetween($sData, '<condition data="', '"/>')
$temp_c = _StringBetween($sData, '<temp_c data="', '"/>')
$vluft = _StringBetween($sData, '<humidity data="', '"/>')
If IsArray($ctData) Then
$ctData = $ctData[0]
Else
MsgBox(0, "Fehler", "Das Programm konnte kein Wetter feststellen! Prüfen sie ihre Internet Verbuíndung!")
GUISetState(@SW_HIDE, $WetterForm)
EndIf
$ctDat = "Aktuell:" & $ctData
GUICtrlSetData($Label1, $ctDat)
If IsArray($temp_c) Then
$temp_c = $temp_c[0]
Else
MsgBox(0, "Fehler", "Das Programm konnte kein Wetter feststellen! Prüfen sie ihre Internet Verbuíndung!")
GUISetState(@SW_HIDE, $WetterForm)
EndIf
$temp = "Temperatur:" & $temp_c
GUICtrlSetData($Label2, $temp)
If IsArray($vluft) Then
$vluft = $vluft[0]
Else
MsgBox(0, "Fehler", "Das Programm konnte kein Wetter feststellen! Prüfen sie ihre Internet Verbuíndung!")
GUISetState(@SW_HIDE, $WetterForm)
EndIf
$luft = "Luft-" & $vluft
GUICtrlSetData($Label3, $luft)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
GUISetState(@SW_HIDE, $WetterForm)
ExitLoop
EndSwitch
WEnd
EndFunc ;==>_Weather
Func _Wohnort()
$states = "&state=" & $iSTADT
$urlort = "http://local.yahooapis.com/MapsService/V1/geocode?appid=YD-9G7bey8_JXxQP6rxl.fBFGgCdNjoDMACQA--&city=" & $iSTADT & $states
$oData = InetRead($urlort)
$sData = $nBytesRead & @CRLF & @CRLF & BinaryToString($oData)
$xmllon = _StringBetween($sData, "<Longitude>", "</Longitude>")
If IsArray($xmllon) Then
$xmllon = $xmllon[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!")
Exit
EndIf
$xmllat = _StringBetween($sData, "<Latitude>", "</Latitude>")
If IsArray($xmllat) Then
$xmllat = $xmllat[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!")
Exit
EndIf
ConsoleWrite("XML " & $xmllon & " " & $xmllat & @CRLF)
$hFile = FileOpen($sFileName, 0)
$sText = FileRead($hFile)
FileClose($hFile)
$Lon = _StringBetween($sText, "var lon =", ";")
If IsArray($Lon) Then
$Lon = $Lon[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!")
Exit
EndIf
$Lat = _StringBetween($sText, "var lat =", ";")
If IsArray($Lat) Then
$Lat = $Lat[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!")
Exit
EndIf
$Zoom = _StringBetween($sText, "var zoom = ", ";")
If IsArray($Zoom) Then
$Zoom = $Zoom[0]
Else
MsgBox(0, "Fehler", "Es wurde kein Längen oder Breitegrad gefunden! Das Programm wird nun Geschlossen!")
Exit
EndIf
$sZoom = 10
$sText = StringReplace($sText, $Zoom, $sZoom)
$sText = StringReplace($sText, $Lon, $xmllon)
$sText = StringReplace($sText, $Lat, $xmllat)
ConsoleWrite("HTML " & $Lon & " " & $Lat & @CRLF)
$hFile = FileOpen($sFileName, 2)
FileWrite($hFile, $sText)
FileClose($hFile)
EndFunc ;==>_Wohnort
Func _Videos()
MsgBox(0, "Fehler", "Derzeit gibt es noch Probleme mit dem Abspielen von Videos!")
#cs
$VideoGUI = GUICreate("Videos", 240, 153, 194, 121)
$vGroup = GUICtrlCreateGroup("Videos", 8, 0, 225, 145)
$vCombo = GUICtrlCreateCombo("", 16, 16, 211, 25)
GUICtrlSetData(-1, "Erste Mondlandung", "Erste Mondlandung")
$vButton = GUICtrlCreateButton("Anschauen", 16, 40, 211, 97, $WS_GROUP)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW, $VideoGUI)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
GUISetState(@SW_HIDE, $VideoGUI)
ExitLoop
Case $vButton
$Combo = GUICtrlRead($vCombo)
If $Combo = "Erste Mondlandung" Then _1stLanding()
GUISetState(@SW_HIDE, $VideoGUI)
EndSwitch
WEnd
#ce
EndFunc ;==>_Videos
Func _1stLanding()
MsgBox(0, "Fehler", "Derzeit gibt es noch Probleme mit dem Abspielen von Videos!")
#cs
Global $VideoGUI
$1Land = GUICreate("Neil Armstrong Landing", 511, 343, -2, 0)
$1Group = GUICtrlCreateGroup("Play Video", 8, 0, 497, 337)
$1Neil = GUICtrlCreateAvi(@ScriptDir & "/Data/Videos/1land.avi", -1, 16, 16, 480, 272)
$1Play = GUICtrlCreateButton("Play", 16, 296, 233, 33, $WS_GROUP)
$1Stop = GUICtrlCreateButton("Stop", 264, 296, 233, 33, $WS_GROUP)
GUICtrlCreateGroup("", -99, -99, 1, 1)
GUISetState(@SW_SHOW, $1Land)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
GUISetState(@SW_HIDE, $1Land)
_Videos()
ExitLoop
Case $1Play
GUICtrlSetState($1Neil, 1)
Case $1Stop
GUICtrlSetState($1Neil, 0)
EndSwitch
WEnd
#ce
EndFunc ;==>_1stLanding
Screenshot
[Blockierte Grafik: http://www.imagebanana.com/img/dok25g5d/OWBScreen.PNG]
Hallo, hier stelle ich mein erstes Projekt vor, das eigentlich kaum etwas macht.
Ich hatte die Funktion für ein anderes Projekt gebraucht und hab mir nun gedacht mach ich mal eins öffentlich.
Was macht dieses Script?
Es ist eine minimal nachbildung von Google Earth. Derzeit ist jedoch nur ein kleines HTML Script.
Was wird benötigt?
tom.js
start.html
world.au3 oder world.exe
ie_map.css
map.css
abou.owb
seastart.html
Das Programm ist Open Source genauso wie die Karten Daten.
Jeder darf das Script frei verändern wenn er das Copyright nicht entfernt!
Die Kartendaten sind von der Freien Wiki Weltkarte "OpenStreetMap"
Ich arbeite bereits an einer Version 1.1 Die beinhaltet das anspringen von Orten etc.
Kritik ist erwünscht. Wer unzufrieden mit dem Script ist ändert es, es ist Open Source!
Version 1.1 ist nun draußen!
Nun gibt es die möglichkeit nach Orten zu suchen. Die Api habe ich nun doch öffentlich gemacht man kann mit dem Key auch keinen Unfug machen. Den APIKey habe ich aus einem Example von Yahoo!
Bekannte Bugs:
Ländersuche ist nicht möglich!