Imports System.Xml
Public Class frmG2GdotNetTV
Inherits System.Windows.Forms.Form
' ¤Ó¹Ç³ËÒ¤èҢͺ¢Í§¿ÍÃìÁ
Private BorderWidth As Integer = (Me.Width - Me.ClientSize.Width) \ 2
' ËÒ¤èÒ¤ÇÒÁÊÙ§¢Í§ TitleBar ... à¾×èÍãªé»ÃÐ⪹ì㹡ÒäӹdzËÒÃÐÂеÓá˹觢ͧ Control µèҧ溹¿ÍÃìÁä´é
Private TitlebarHeight As Integer = Me.Height - Me.ClientSize.Height - 2 * BorderWidth
Private Sub frmG2GdotNetTV_Load( _
ByVal sender As System.Object, _
ByVal e As System.EventArgs) _
Handles MyBase.Load
Dim XMLDoc As XmlDocument ' àÍ¡ÊÒà XML
Dim NodeList As XmlNodeList ' â˹´·Ñé§ËÁ´·ÕèÁÕÍÂÙè ¡ç¤×Í ·Ø¡æ Station ¹Ñè¹àͧ
' â˹´áµèÅеÑÇ ËÃ×Í áµèÅÐ Station
' µÑÇÍÂèÒ§¹Õé¡ç¨ÐÁÕ Element ´Ñ§¹Õé¤×Í ID, StationName, GroupName, Media
Dim NodeElement As XmlNode
' µÑÇá»Ã Item à¾×èÍãªé§Ò¹¡Ñº ListView
Dim LV As New ListViewItem
' ÊÃéÒ§ XML Document
XMLDoc = New XmlDocument()
' âËÅ´ Xml à¢éÒÁÒ
Dim StrAppPath As String = Environment.CurrentDirectory
XMLDoc.Load(StrAppPath & "\g2gnettv.xml")
' ʶҹÕÍ͹äŹì¨Ò¡ Web Server ... ¢éÍÁÙÅÊ¶Ò¹Õ ËÃ×Í ÃÒ¡ÒõèÒ§æ¨Ð¶Ù¡ Update ³ ·Õèà´ÕÂǡѹ
'XMLDoc.Load("http://www.g2gnet.com/g2gnettv/g2gnettv.asp")
Me.StartPosition = FormStartPosition.CenterScreen
With lvwStation
.Clear()
.View = View.Details
.FullRowSelect = True ' áÊ´§á¶ºáʧã¹á¶Ç·Õè¶Ù¡ Focus
.HideSelection = False ' äÁè»Ô´á¶ºáʧ㹢³Ð·Õè Listview äÁè¶Ù¡ Focus
.Columns.Add("ID", 0)
.Columns.Add("ʶҹÕ/ÃÒ¡ÒÃ", lvwStation.Width \ 2)
.Columns.Add("¡ÅØèÁÃÒ¡ÒÃ", lvwStation.Width \ 2 - 20)
' «è͹¢éÍÁÙÅ URL äÁèãËé¼Ùéãªé§Ò¹ä´éàËç¹ ... áÍºææææ
.Columns.Add("Media", 0)
End With
' ¡Ó˹´â˹´
NodeList = XMLDoc.SelectNodes("tvstation/channel/Station")
' ǹÃͺáµèÅÐâ˹´ - Station Node
For Each NodeElement In NodeList
' ÍèÒ¹ ID Element
Dim ID As String = NodeElement.ChildNodes.Item(0).InnerText
' ÍèÒ¹ StationName Element
Dim StationName As String = NodeElement.ChildNodes.Item(1).InnerText
' ÍèÒ¹ GroupName Element
Dim GroupName As String = NodeElement.ChildNodes.Item(4).InnerText
' ÍèÒ¹ Media Element - à»ç¹¡ÒÃà¡çº¤èÒ URL ¤ÃѺ ... ¾Õè¹éͧ
Dim Media As String = NodeElement.ChildNodes.Item(2).InnerText
' ¨ÑºÂÑ´à¢éÒãÊè ListView ·ÕÅÐ Column
LV = lvwStation.Items.Add(ID) ' Index = 0
LV.SubItems.Add(StationName) ' Index = 1
LV.SubItems.Add(GroupName) ' Index = 2
LV.SubItems.Add(Media) ' Index = 3 ... µÑǹÕéµéͧãªé㹡ÒáÓ˹´¤èÒ URL ãËé¡Ñº Windows Media Player
Next
Me.Text = "G2GdotNetTV On Line - www.g2gnet.com"
' µÑ駤èÒãËé¡Ñº Windows Media Player
WMP.enableContextMenu = False ' äÁèãËé¼Ùéãªé¡´àÁÒÊì¢ÇÒ à¾×èÍàÅ×Í¡àÁ¹Ù
WMP.stretchToFit = True ' ãËé˹éÒ¨Í Windows Media Player ¾Í´Õ¡Ñº¡ÒûÃѺ¢¹Ò´¢Í§¿ÍÃìÁ
End Sub
Private Sub lvwStation_KeyPress( _
ByVal sender As Object, _
ByVal e As System.Windows.Forms.KeyPressEventArgs) _
Handles lvwStation.KeyPress
' Chr(13) ËÃ×Í ¡ç¤×Í¡Òá´ Enter ¹Ñè¹àͧ
If e.KeyChar = Chr(13) Then Call GetURL()
End Sub
Private Sub lvwStation_MouseDoubleClick( _
ByVal sender As Object, _
ByVal e As System.Windows.Forms.MouseEventArgs) _
Handles lvwStation.MouseDoubleClick
Call GetURL()
End Sub
' ÍèÒ¹¤èÒ¨Ò¡ Column ·Õè 4 (ËÃ×Í Index = 3) «Öè§à»ç¹¤èÒ URL ã¹ ListView
Private Sub GetURL()
Dim LV As ListViewItem
If Me.lvwStation.SelectedItems.Count > 0 Then
LV = Me.lvwStation.SelectedItems(0)
WMP.URL = LV.SubItems(3).Text
Me.Text = "G2GdotNetTV On Line - www.g2gnet.com [" & LV.SubItems(1).Text & "]"
End If
End Sub
Private Sub frmG2GdotNetTV_Resize( _
ByVal sender As Object, _
ByVal e As System.EventArgs) _
Handles Me.Resize
' àÍÒẺºéÒ¹æµÒÁÊäµÅì¢Í§ M$ Visual Basic 6.0 ÅèСѹ¹èФÃѺ ... ¾Õè¹éͧ ... 55555+
With grpStation
.Left = 0
.Top = Me.Height - grpStation.Height - TitlebarHeight - 8
.Width = Me.Width - 8
End With
With WMP
.Left = 0
.Top = 0
.Width = Me.Width
.Height = Me.Height - grpStation.Height - TitlebarHeight - 8
End With
With lvwStation
.Left = 5
.Top = 15
.Width = grpStation.Width - 10
.Height = grpStation.Height - 22
End With
End Sub
End Class
|