- ベストアンサー
[VB2008]テキストボックスにファイルをD&Dできるようにしたい
テキストボックスにファイルをD&Dして ドロップされたファイルのフルパスをテキストボックスに表示するにはどうすればいいでしょうか。 初心者なので実際のソースを見せていただけると助かります。 ご回答お願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
VB2005で書いたコードですが2008でも同じだと思います。 フォームデザイナで TextBox1 の AllowDrop を True とするか、FormのLoadイベントで TextBox1.AllowDrop = True としてください。 Private Sub TextBox1_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TextBox1.DragEnter ' ドラッグデータがファイルの場合のみ処理する If e.Data.GetDataPresent(Windows.Forms.DataFormats.FileDrop) Then ' マウスのアイコンを変更 e.Effect = DragDropEffects.Copy End If End Sub Private Sub TextBox1_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TextBox1.DragDrop ' ドラッグデータがファイルの場合のみ処理する If e.Data.GetDataPresent(Windows.Forms.DataFormats.FileDrop) Then ' データを取得 Dim objData As Object = e.Data.GetData(Windows.Forms.DataFormats.FileDrop) ' ファイルの場合はString型の配列なので型変換 Dim strFiles As String() = CType(objData, String()) ' 配列の先頭のファイル名を出力 TextBox1.Text = strFiles(0) End If End Sub
その他の回答 (1)
- うぃず(@Wizard_Zero)
- ベストアンサー率69% (344/495)
#1 Wizard_Zeroです。 #1で提示したコードがファイルのフルパスを取得する方法です。 (あるいは、コードを実行したらファイルの中身がテキストボックスに表示されましたでしょうか??)
お礼
ごめんなさい。 初心者の浅知恵で勘違いしました。 本当に申し訳ありません。 今後もなにかあればよろしくお願いします。
お礼
どうやらファイルの中身を取得するようになっていますね・・・・ ドロップされたファイルのフルパスを取得するにはどうすればいいのでしょうか?