【】Top

【】VB.NET
【】VB6.0

【】メールマガジンの購読
【】メールマガジンの解除






【】会社概要

【】お問い合わせ


姉妹サイト「バーチャルコネクション!」はこちらです。

姉妹サイト「七福神のメールでビンゴ!」はこちらです。

アイネットマコト

●24時間365日の安心をあなたにAT-LINK専用サーバ・サービスお勧めのサーバです。






ドラッグアンドドロップでファイルを関連付けでオープンする

【注意書き】
●VB.NET を使っているものとします。
●動作環境は、Windows XX を使用しているとします。


.NET でも、ドラッグアンドドロップでファイルを関連付けで
オープンすることが可能です。

この機能を使えば、簡単に、アプリケーション側で
ドラッグアンドドロップに対応したファイル操作を行いたい
場合などに活用できます。


フォームに次の様なコードを記述します


-----------VB.NETコーディングここから-------------------


1.フォームに、リストボックスコントロール
    を配置します。
    下記は、デフォルトのオブジェクトの名前と配置を示しています。

   ┏━━━━━━━━━━━━┓
   ┃ListBox1                ┃
   ┃                        ┃
   ┃                        ┃
   ┗━━━━━━━━━━━━┛



2.フォームをダブルクリックして、
    フォームロードイベントのコード編集を開始して、
    次のコードを記述します。


    Dim MjstrPicPath As String


    Private Sub Form1_DragDrop(ByVal sender As Object, _
    ByVal e As System.Windows.Forms.DragEventArgs) _
    Handles MyBase.DragDrop


        MjstrPicPath = e.Data.GetData(DataFormats.FileDrop)(0)


        If Dir(MjstrPicPath) <> "" Then
            'ファイルの一覧に追加
            ListBox1.Items.Add(MjstrPicPath)

            OPN_FILE(MjstrPicPath)

        End If

    End Sub

    Private Sub Form1_DragEnter(ByVal sender As Object, _
    ByVal e As System.Windows.Forms.DragEventArgs) _
    Handles MyBase.DragEnter


        '関連連づけの確認をしています。
        'この場合、ドラッグアンドドロップの形式であるかどうか?
        If e.Data.GetDataPresent(DataFormats.FileDrop) Then

            'ドロップ効果を取得
            e.Effect = DragDropEffects.Copy
        Else
            'ドロップ効果を破棄
            e.Effect = DragDropEffects.None
        End If

    End Sub

    Private Sub Form1_Load(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles MyBase.Load
        Me.AllowDrop = True

    End Sub



    Private Sub ListBox1_DoubleClick(ByVal sender As Object, _
    ByVal e As System.EventArgs) Handles ListBox1.DoubleClick

        MjstrPicPath = ListBox1.SelectedItem


        'オープン対象のパスを関連付けられた
        'アプリケーションから起動するようにしています。
        OPN_FILE(MjstrPicPath)

    End Sub

    Sub OPN_FILE(ByVal PistrPath As String)

        'オープン対象のパスを関連付けられた
        'アプリケーションから起動するようにしています。
        System.Diagnostics.Process.Start(PistrPath)

    End Sub


3.ビルドして実行します。

4.関連付けられた適当なファイル(例えばテキストファイル)などを
    フォームにドラッグアンドドロップでドロップします。

5.フォームに表示された
    リストボックスに、ドラッグアンドドロップした
    ファイルのパスが表示されます。

6.同時に、関連付けられたアプリケーションで
  ファイルがオープンされます。




-----------VB.NETコーディングここまで-------------------

本サンプルでは、エクスプローラ等から、ファイルのドラッグアンドドロップ
の操作でファイルのパスを受け取っています。

関連付けられたアプリケーションからオープンする
        System.Diagnostics.Process.Start(PistrPath)
でファイルのオープンを行っています。

また、リストボックスの一覧でダブルクリックすると
そのファイルをオープンする事を可能にしています。



 

http://anetm.com/dev/d.cgi?SC=DTDTL&o=OVe

Copyright(c)2001-2004 Ai Net Makoto 記事・情報の無断転載を禁止します。

「これがほしかった!厳選サンプルツール集」の注意点
●当サイトはリンクフリーです。
2018/10/21(日)00:05 更新