VB.NET ListBox加载还是比较常用的,于是我研究了一下VB.NET ListBox加载目录与文件列表 ,在这里拿出来和大家分享一下,希望对大家有用。文本文件方式是以行为单位进行读取的基本单位,主要应用的方法和函数有Open,Close,Line Input,FreeFile,EOF等。下面先简述其功能然后结合代码示例进行说明。Open:顾名思义,它的作用是打开文件,换而言之打开某个文件就是获得某个的控制权,一般情况下当文件处于打开状态时只有打开者才能对它进行操作。打开文件时要指定一个整数作为文件号,以后的操作都是针对这个代号进行的,而不是针对文件名。文件号也叫句柄,在程序中一个文件号只能指向一个文件,不能出现两个文件同时具有相同句柄的情况。Close:关闭文件,即释放文件的控制权。
VB.NET ListBox加载代码:
- Option Explicit
- 'API声明
- Private Declare Function SendMessageA Lib "user32" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
- '常量
- Private Const LB_DIR = &H18D
- Private Const DDL_DRIVES = &H4000 '磁盘
- Private Const DDL_DIRECTORY = &H10 '文件夹
- Private Const DDL_ARCHIVE = &H20
- Private Const DDL_EXCLUSIVE = &H8000&
- Private Const DDL_READWRITE = &H0 '读写
- Private Const DDL_READONLY = &H1 '只读
- Private Const DDL_HIDDEN = &H2 '隐藏
- Private Const DDL_SYSTEM = &H4 '系统
- Private Const DDL_POSTMSGS = &H2000
- '-------------------------------------------------
- '功能:用ListBox控件加载文件列表
- '参数:lst - 指定的ListBox控件
- ' sPath - 指定目录
- '-------------------------------------------------
- Private Sub MyListBoxLoadFolder(ByRef lst As ListBox, _
- ByVal sPath As String, _
- Optional bShowFolders As Boolean = True)
- On Error Resume Next
- Dim lngReturn As Long
- Dim lngFlags As Long
- If bShowFolders = False Then
- lngFlags = DDL_EXCLUSIVE Or DDL_ARCHIVE Or DDL_SYSTEM Or DDL_HIDDEN
- Else
- lngFlags = DDL_EXCLUSIVE Or DDL_ARCHIVE Or DDL_SYSTEM Or DDL_HIDDEN Or DDL_DIRECTORY
- End If
- '清空列表
- lst.Clear
- '开始装载文件列表
- lngReturn = SendMessageA(lst.hWnd, LB_DIR, lngFlags, ByVal sPath)
- End Sub