掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
フォルダダイアログの初期位置について (ID:82669)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
現在、コマンドボタンを押したときにフォルダ選択ダイアログBOXを表示しています。初期値を設定していないので、いつもC:\の位置になるのですが、 ファイル選択ダイアログのように、フォルダ選択ダイアログも初期位置の設定をできるのでしょうか? APIを使っていると思うのですけど、APIはまだまだ初心者で全くわからないので、 設定方法などご教授お願いします。 現在はこのような感じで設定しております。 (ネットからサンプルをひろいました。) '関数の宣言 フォルダ選択 Private Declare Function SHBrowseForFolder Lib "shell32.dll" (lpbi As BrowseInfo) As Long Private Declare Function SHGetPathFromIDList Lib "shell32.dll" (ByVal pidList As Long, ByVal lpbuffer As String) As Long Private Declare Function lstrcat Lib "kernel32.dll" Alias "lstrcatA" (ByVal lpString1 As String, ByVal lpString2 As String) As Long '構造体定義 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 Private Const MAX_PATH = 260 With tBrowseInfo .hWndOwner = Me.hWnd .lpszTitle = lstrcat(szTitle, "") .ulFlags = BIF_RETURNONLYFSDIRS ' + BIF_DONTGOBELOWDOMAIN End With lpIDList = SHBrowseForFolder(tBrowseInfo) If (lpIDList) Then sBuffer = Space(MAX_PATH) SHGetPathFromIDList lpIDList, sBuffer sBuffer = Left(sBuffer, InStr(sBuffer, vbNullChar) - 1) txtName.Text = sBuffer End If
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2020 Takeshi Okamoto All Rights Reserved.