999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

TreeView控件的應用開發

2012-01-01 00:00:00李鵬
藝術科技 2012年3期

摘 要:基于VS2008中Windows窗體應用程序中TreeView控件,并結合ListViewr控件和SplitContainer容器控件的使用,建立TreeView樹形結構視圖為主體的資源管理器,帶給用戶一個清晰簡明的界面,提高了人機交互的友好性。

關鍵詞:TreeView控件;應用;開發

TreeView是以樹形列表顯示數據的控件,能分層展開和收縮各節點子目錄。TreeView控件的應用非常廣泛,幾乎所有的應用程序中都會存在。

本文主要是基于VS2008中Windows窗體應用程序中TreeView控件,并結合ListViewr控件和SplitContainer容器控件的使用,建立TreeView樹形結構視圖為主體的資源管理器,它帶給用戶一個清晰簡明的界面,提高了人機交互的友好性。

1 項目創建與窗體的排版

運行VS2008,創建一個VB的Windows窗體應用程序,在Windows窗體上,拖入SplitContainer容器控件,該控件分為左右兩個區域,每個區域可放置一個其他控件。在左邊區域里拖入TreeView控件,在其屬性窗口里把DOCK屬性改為Fill。在右邊區域拖入一個ListView控件,在基屬性窗口里把DOCK屬性改為Fill,Columns集合編輯器里添加3個成員(ColumnHeader),分別將其名稱改為:名稱、大小、類型、修改時間。

2 TreeView控件的樹形視圖實現

2.1 在窗體代碼類里上方,引用Imports System.IO命名空間,引用的目的是為了簡寫窗體類中關于驅動器、文件夾和文件的代碼。

2.2 在窗體加載事件中建立一個節點“我的電腦”,并利用節點node的Tag屬性來存放文件的完整地址,便于后面查詢。遍歷所有驅動器,并將驅動器的名稱添加到TreeView中,形成一個驅動器的樹形結構圖。

Dim mynode As New TreeNode

mynode = TreeView1.Nodes.Add(\"我的電腦\")

mynode.Tag = \"mycomputer\"

Dim drives As DriveInfo()= DriveInfo.GetDrives

Dim submynode As New TreeNode

For Each drive As DriveInfo In drives

submynode = mynode.Nodes.Add(drive.Name)

submynode.Tag = drive.Name

CreateTree(submynode,submynode.Tag.ToString)

Next

2.3 建立一個子程序來添加驅動器下的各個文件夾在TreeView上的節點。

Private Sub CreateTree(ByVal mynode As TreeNode,ByVal path As String)

Dim dir As DirectoryInfo = New DirectoryInfo(path)

Dim submynode As New TreeNode

If dir.Name.Substring(1,2)= \":\\\" Or dir.Attributes = FileAttributes.Directory Then

Try

For Each subdir As DirectoryInfo In dir.GetDirectories

If subdir.Attributes = FileAttributes.Directory Then

Try

submynode = mynode.Nodes.Add(subdir.Name)

submynode.Tag = subdir.FullName

CreateTree(submynode,submynode.Tag.ToString)

Catch ex As Exception

End Try

End If

Next

Catch ex As Exception

End Try

End If

End Sub

3 建立一個子程序用于在點擊TreeView節點時,在ListView中顯現該節點對應文件夾下的子文件夾和文件

Private Sub FilterListView(ByVal mynode As TreeNode)

ListView1.Items.Clear()''清空ListView

If mynode.Tag.ToString = \"mycomputer\" Then Return

Dim dir As DirectoryInfo = New DirectoryInfo(mynode.Tag.ToString)

If dir.Name.Substring(1,2)= \":\\\" Or dir.Attributes = FileAttributes.Directory Then

Try

Dim item As ListViewItem = Nothing

Dim subitem As ListViewItem.ListViewSubItem()= Nothing

For Each subdir As DirectoryInfo In dir.GetDirectories

‘定義顯現節點對應文件夾下的子文件

If subdir.Attributes = FileAttributes.Directory Then

Try

item = New ListViewItem(subdir.Name,0)

subitem = New ListViewItem.ListViewSubItem()_

{New ListViewItem.ListViewSubItem(item,\"文件夾\"),_

New ListViewItem.ListViewSubItem(item,subdir.LastWriteTime.ToString)}

item.SubItems.AddRange(subitem)

ListView1.Items.Add(item)

Catch ex As Exception

End Try

End If

Next

For Each subdir As DirectoryInfo In dir.GetDirectories

‘定義顯現節點對應文件夾下的文件(同上)

End Sub

4 建立TreeView的NodeMouseClick事件,在該事件中處理圖標狀態

Private Sub TreeView1_NodeMouseClick(ByVal sender As Object,ByVal e As System.Windows.Forms.TreeNodeMouseClickEventArgs)Handles TreeView1.NodeMouseClick

Dim mynode As TreeNode = e.Node

If mynode.IsExpanded = False Then

mynode.SelectedImageIndex = 0

Else

mynode.SelectedImageIndex = 1

End If

FilterListView(e.Node)

End Sub

5 測試效果如下

參考文獻:

[1] Microsoft公司的MSND Online.

[2] Windows 程序設計(第5版).方敏,張勝,趙勇,等譯.北京:清華大學出版社,2010.

[3] 盧鎮波,李清.Visual Basic.net 實用編程百例[M].北京:清華大學出版社,2005.

[4] Thearon Willis,Bryan Newsome.Visual Basic 2010入門經典(第6版)[M].吳偉敏,李周芳,譯.北京:清華大學出版

主站蜘蛛池模板: 日韩亚洲综合在线| 天天婬欲婬香婬色婬视频播放| 全部免费特黄特色大片视频| 国产69囗曝护士吞精在线视频| 国产高清免费午夜在线视频| 色综合中文字幕| 老司机精品99在线播放| 亚洲高清国产拍精品26u| 日韩视频免费| 国产精品专区第一页在线观看| 亚洲成人福利网站| 中文字幕佐山爱一区二区免费| 99爱视频精品免视看| 日韩视频福利| 欧美中文字幕第一页线路一| 秘书高跟黑色丝袜国产91在线| 亚洲色图综合在线| 国产欧美精品一区aⅴ影院| 久久九九热视频| 久久一本日韩精品中文字幕屁孩| 在线精品自拍| 国产免费福利网站| 国产免费福利网站| 欧美午夜在线播放| 久久亚洲国产最新网站| 亚洲黄网在线| 欧美日本中文| 亚洲天堂网2014| 无码不卡的中文字幕视频| 欧美性精品| 一区二区理伦视频| 久久久久青草大香线综合精品| 国产精品污视频| 日韩高清一区 | 国产一区二区三区免费观看| 亚洲综合经典在线一区二区| a级免费视频| 国产另类乱子伦精品免费女| 中文字幕亚洲综久久2021| 色婷婷在线影院| 日韩在线观看网站| 国产成人乱无码视频| 秘书高跟黑色丝袜国产91在线| 国产精品亚洲一区二区三区在线观看| 啦啦啦网站在线观看a毛片| 激情乱人伦| 国产综合日韩另类一区二区| 亚洲国产清纯| 欧美h在线观看| www.91在线播放| 国产成人艳妇AA视频在线| 色偷偷av男人的天堂不卡| 国产精品欧美激情| 国产精品第| 欧美区国产区| 成人免费一级片| 日本欧美视频在线观看| 国产在线观看精品| 九色视频最新网址| 毛片免费高清免费| 国产制服丝袜91在线| v天堂中文在线| 久久这里只精品热免费99| 日韩精品一区二区三区大桥未久| 亚洲浓毛av| 欧美不卡在线视频| 免费高清毛片| 久久综合国产乱子免费| 人人妻人人澡人人爽欧美一区| 一级看片免费视频| 国产亚洲日韩av在线| 中文字幕亚洲电影| 永久免费AⅤ无码网站在线观看| 午夜福利在线观看入口| 五月婷婷亚洲综合| 亚洲不卡网| 精品国产成人av免费| 高清欧美性猛交XXXX黑人猛交| 91久久国产成人免费观看| 国产一级一级毛片永久| 日本一区二区三区精品视频| 亚洲天堂网在线观看视频|