15追記)wxWidgetsでファイルのドラッグアンドドロップをサポートするには次のようにします。wxFileDropTargetクラスを継承wxWidgetsではドラッグされる物を取り扱うクラスが独立して存在しています。ドラッグされたファイル名を管理してくれるのはwxFileDropTargetクラスです。このクラスは抽象クラスのため、プログラマがこのクラスを継承する必要があります。仮想メソッドはただ一つOnDropFilesメソッドです。true;}コンストラクタで渡したフレーム(ウィンドウ)にOnDropFileメソッドを設けておきます。MyFileDropTarget::OnDropFilesメソッドはコールバックになっていて、ファイルがドロップされると引数にドロップされた位置とファイル名配列が渡されます。上の例では最初のファイル名(フルパス)を配列から取得してそれをMyFrameに渡しています。MyFileDropTarget(this);this->SetDropTarget(fileDropTarget);}こんな感じでコンストラクタで渡しておけば良いでしょう。ドラッグアンドドロップはこれだけで実現できます(^-^)。クラスを用いないドラッグアンドドロップサポート先の実装に対して神無月様より「クラスを使わなくてもできますよ」というご報告を頂きました。ありがとうございます!ご教授いただいた実装方法を追記致します。wxFrame)EVT_DROP_FILES(MainFrame::onDropFile)END_EVENT_TABLE()これは通常のイベントハンドラ定義と同じ書き方です。次に、wxWindow::DragAcceptFilesメソッド(wxFrameの親です)でファイルのドラッグアンドドロップを許可します:this->DragAcceptFiles(true);これでそのウィンドウにファイルをドラッグアンドドロップできるようになります。{}引数のeventにはファイル名やドロップ位置等が入ってきます。クラスによる方法とハンドラによる方法とで違うのは、機能を分離できるかどうかかなと思います。ハンドラはフレームクラスの一部なので、機能を変えるには工夫が必要です。クラスによる方法ではオブジェクトを入れ替えることで機能を変える事ができます。その分クラスを新設するなどコード量は増えます。仕様に合わせて使い分けるのが良さそうですね。