細(xì)談VB.NET路徑選擇對(duì)話框?qū)崿F(xiàn)(API)實(shí)例
VB.NET 這門語(yǔ)言被我們大部分人所熟悉。但是今天在這里還是要介紹一下首先接受一下VB.NET,更主要的是讓大家深入的了解一下VB.NET路徑選擇目錄對(duì)話框?qū)嵗?/P>
VB.NET是Visual Basic.net的簡(jiǎn)稱。提到VB.NET,就不能不先提一下vb(Visual Basic)。Visual Basic是Windows環(huán)境下的一種簡(jiǎn)單、易學(xué)的編程語(yǔ)言,由于其開發(fā)程序的快速、高效,深受程序員的喜愛(ài)。嚴(yán)格地來(lái)說(shuō)Visual Basic只是半面向?qū)ο蟮恼Z(yǔ)言,其面向?qū)ο蟮哪芰俺绦虻膱?zhí)行效率往往不能一些程序員的需要,因此,大的項(xiàng)目很少使用Visual Basic來(lái)開發(fā)。Visual Basic的***一個(gè)版本是Visual Basic 6.0。在Visual Basic 6.0之后,微軟公司推出了全新的“.NEt構(gòu)架”,在其***個(gè)版本-Visual Studio.NET 7.0中,集成了Visual Basic 7.0、Visual C++ 7.0及C#,其中的Visual Basic 7.0(vb 7.0),即是vb.net的***個(gè)版本?,F(xiàn)在.NET是***版本是Visual Studio 2005,對(duì)應(yīng)的vb.net的***版本是集成在其中的Visual Basic 9.0(vb 9.0),也可稱為vb.net 2005。 下面介紹一下VB.NET路徑選擇目錄對(duì)話框?qū)崿F(xiàn)(API):
- Private Type BrowseInfo
- hWndOwner As Long
- pIDLRoot As Long
- pszDisplayName As Long
- lpszTitle As Long
- ulFlags As Long
- lpfnCallback As Long
- lParam As Long
- iImage As Long
- End Type
- Const BIF_RETURNONLYFSDIRS = 1
- Const MAX_PATH = 260
- Private Declare Sub CoTaskMemFree Lib "ole32.dll" (ByVal hMem As Long)
- Private Declare Function lstrcat Lib "kernel32" Alias "lstrcatA" (ByVal lpString1 As String, ByVal lpString2 As String) As Long
- Private Declare Function SHBrowseForFolder Lib "shell32" (lpbi As BrowseInfo) As Long
- Private Declare Function SHGetPathFromIDList Lib "shell32" (ByVal pidList As Long, ByVal lpBuffer As String) As Long
- Private Function getFolder(ByVal title As String) As String
- Dim iNull As Integer, lpIDList As Long, lResult As Long
- Dim sPath As String, udtBI As BrowseInfo
- With udtBI
- '設(shè)置彈出的對(duì)話框的父窗口句柄
- .hWndOwner = Me.hWnd
- .lpszTitle = lstrcat(title, "") '標(biāo)題
- .ulFlags = BIF_RETURNONLYFSDIRS
- End With
- lpIDList = SHBrowseForFolder(udtBI)
- If lpIDList Then
- sPath = String$(MAX_PATH, 0)
- SHGetPathFromIDList lpIDList, sPath
- CoTaskMemFree lpIDList
- iNull = InStr(sPath, vbNullChar)
- If iNull Then
- sPath = Left$(sPath, iNull - 1)
- End If
- End If
- getFolder = sPath
- End Function
- Private Sub Command1_Click()
- Text1.Text = getFolder("請(qǐng)選擇文件夾")
- End Sub
以上就VB.NET路徑解決方案,希望可以給你帶來(lái)幫助。
【編輯推薦】