Forráskód

 
Form1 neve: Form1
Form2 neve: frmFirstCity
 
FORM1:
 
GroupBox1 neve: groupbox1
PictureBox1 neve: PictureBox1
PictureBox2 neve: weatherImage
Label1 neve: RTTemp
Label2 neve: RTWeatherType
 
frmFirstCity:
 
Label1 neve: Label1
Label2 neve: Label2
NumericUpDown1 neve: NumericUpDown1
 
 
FORM1
 
Imports Microsoft.WindowsAPICodePack.Shell
Imports Microsoft.WindowsAPICodePack.Taskbar
Imports System.Xml
Imports System.Xml.XPath
Public Class Form1
    Private strLocationID As String() = {"638242", "551801", "803660", "640161", "804365", "868274", "804462", "2295424", "2379574", "805328", "807517", "807518", "807523", "807525", "90584002", "44418", "812036", "2122265", "2295411", "676758", "2459115", "812897", "615702", "2151330", "813653", "721943", "815055", "815498", "816011", "1105779", "1118370", "2295426", "817719", "817849"}
    Private strLocations As String() = {"Berlin (DE)", "Bécs (AT)", "Békéscsaba (HU)", "Bonn (DE)", "Budapest (HU)", "Bukarest (RO)", "Cegléd (HU)", "Chennai (IN)", "Chicago (US)", "Debrecen (HU)", "Hajdúböszörmény (HU)", "Hajdúdorog (HU)", "Hajdúnánás (HU)", "Hajdúszoboszló (HU)", "Kiev (RU)", "London (GB)", "Miskolc (HU)", "Moszkva (RU)", "Mumbai (IN)", "München (DE)", "New York (US)", "Nyíregyháza (HU)", "Párizs (FR)", "Peking (CH)", "Pécs (HU)", "Róma (IT)", "Sopron (HU)", "Szeged (HU)", "Szolnok (HU)", "Sydney (AU)", "Tokio (JP)", "Trivandrum (IN)", "Veszprém (HU)", "Visegrád (HU)"}
    Private currentLocation As Integer = My.Settings.FirstCity
    Private buttonNext As ThumbnailToolbarButton
    Private buttonPrevious As ThumbnailToolbarButton
    Private tbManager As TaskbarManager = TaskbarManager.Instance
    Sub GetWeatherReport(ByVal locationId As Integer)
        Me.Text = strLocations(locationId)
        Dim doc As New XPathDocument(" https://weather.yahooapis.com/forecastrss?w=" & strLocationID(locationId) & "&u=c ")
        Dim nav As XPathNavigator = doc.CreateNavigator()
        Dim ns As New XmlNamespaceManager(nav.NameTable)
        ns.AddNamespace("yweather", "https://xml.weather.yahoo.com/ns/rss/1.0")
        Dim nodes As XPathNodeIterator = nav.[Select]("/rss/channel/item/yweather:condition", ns)
        While (nodes.MoveNext())
            Dim node As XPathNavigator = nodes.Current
            RTTemp.Text = node.GetAttribute("temp", ns.DefaultNamespace).ToString() & "°C"
            RTWeatherType.Text = node.GetAttribute("text", ns.DefaultNamespace).ToString()
            weatherImage.ImageLocation = "https://l.yimg.com/a/i/us/we/52/" & node.GetAttribute("code", ns.DefaultNamespace).ToString() & ".gif"
            SetProgressBarStyle(Convert.ToInt16(node.GetAttribute("temp", ns.DefaultNamespace)))
        End While
    End Sub
    Private Sub SetProgressBarStyle(ByVal weather As Integer)
        tbManager.SetProgressValue(50, 100)
        If weather <= 10 Then
            tbManager.SetProgressState(TaskbarProgressBarState.Normal)
        End If
        If weather >= 20 Then
            tbManager.SetProgressState(TaskbarProgressBarState.Paused)
        End If
        If weather >= 30 Then
            tbManager.SetProgressState(TaskbarProgressBarState.[Error])
        End If
    End Sub
    Private Sub Form1_Shown(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Shown
        buttonNext = New ThumbnailToolbarButton(My.Resources.nextArrow, "Következő város")
        buttonNext.Enabled = True
        AddHandler buttonNext.Click, AddressOf buttonNext_Click
        buttonPrevious = New ThumbnailToolbarButton(My.Resources.prevArrow, "Előző város")
        buttonPrevious.Enabled = True
        AddHandler buttonPrevious.Click, AddressOf buttonPrevious_Click
        TaskbarManager.Instance.ThumbnailToolbars.AddButtons(Me.Handle, buttonPrevious, buttonNext)
        GetWeatherReport(currentLocation)
    End Sub
    Private Sub buttonNext_Click(ByVal sender As Object, ByVal e As EventArgs)
        If (currentLocation + 1) < strLocationID.Length Then
            currentLocation += 1
            GetWeatherReport(currentLocation)
        End If
    End Sub
    Private Sub buttonPrevious_Click(ByVal sender As Object, ByVal e As EventArgs)
        If (currentLocation - 1) >= 0 Then
            currentLocation -= 1
            GetWeatherReport(currentLocation)
        End If
    End Sub
    Private Sub PictureBox1_Click(sender As Object, e As EventArgs) Handles PictureBox1.Click
        frmFirstCity.ShowDialog()
    End Sub
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        If My.Computer.Network.IsAvailable = True Then
        Else
            MsgBox("Nincs internetkapcsolat!", MsgBoxStyle.Critical, "HIBA!")
            End
        End If
    End Sub
End Class
 
 
FRMFIRSTCITY
 
Public Class frmFirstCity
    Private Sub frmFirstCity_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        NumericUpDown1.Value = My.Settings.FirstCity
        Label2.Text = "Berlin (DE) = 0" & vbCrLf & _
            "Bécs (AT) = 1" & vbCrLf & _
            "Békéscsaba (HU) = 2" & vbCrLf & _
            "Bonn (DE) = 3" & vbCrLf & _
            "Budapest (HU) = 4" & vbCrLf & _
            "Bukarest (RO) = 5" & vbCrLf & _
            "Cegléd (HU) = 6" & vbCrLf & _
            "Chennai (IN) = 7" & vbCrLf & _
            "Chicago (US) = 8" & vbCrLf & _
            "Debrecen (HU) = 9" & vbCrLf & _
            "Hajdúböszörmény (HU) = 10" & vbCrLf & _
            "Hajdúdorog (HU) = 11" & vbCrLf & _
            "Hajdúnánás (HU) = 12" & vbCrLf & _
            "Hajdúszoboszló (HU) = 13" & vbCrLf & _
            "Kiev (RU) = 14" & vbCrLf & _
            "London (GB) = 15" & vbCrLf & _
            "Miskolc (HU) = 16" & vbCrLf & _
            "Moszkva (RU) = 17" & vbCrLf & _
            "Mumbai (IN) = 18" & vbCrLf & _
            "München (DE) = 19" & vbCrLf & _
            "New York (US) = 20" & vbCrLf & _
            "Nyíregyháza (HU) = 21" & vbCrLf & _
            "Párizs (FR) = 22" & vbCrLf & _
            "Peking (CH) = 23" & vbCrLf & _
            "Pécs (HU) = 24" & vbCrLf & _
            "Róma (IT) = 25" & vbCrLf & _
            "Sopron (HU) = 26" & vbCrLf & _
            "Szeged (HU) = 27" & vbCrLf & _
            "Szolnok (HU) = 28" & vbCrLf & _
            "Sydney (AU) = 29" & vbCrLf & _
            "Tokio (JP) = 30" & vbCrLf & _
            "Trivandrum (IN) = 31" & vbCrLf & _
            "Veszprém (HU) = 32" & vbCrLf & _
            "Visegrád (HU) = 33"
    End Sub
    Private Sub NumericUpDown1_ValueChanged(sender As Object, e As EventArgs) Handles NumericUpDown1.ValueChanged
        My.Settings.FirstCity = NumericUpDown1.Value
        My.Settings.Save()
    End Sub
End Class
 
 
 

 

Készíts ingyenes honlapot Webnode