エクスプローラ等から作成したアプリケーションにファイルをコピーするには?

解決


ミズキ  2003-03-13 08:28:42  No: 3137

2回目の投稿となります。
やりたいことは、
エクスプローラ  →  (ドラッグ&ドロップ)  →  作成したアプリケーション
です。
逆の操作はよくネット上でも解説をよく目にするのですが、
この操作は探し出せませんでした。

よろしくお願いします。

環境は、
Windos2000
Delphi6.0 Personal
です。


ミズキ  2003-03-13 08:31:53  No: 3138

ごめんなさい。
逆でした。

作成したアプリケーション  →  (ドラッグ&ドロップ)  →  エクスプローラ
(TFileListBox)
です。

掲示板から削除ってできないんですか?
せめて命題の変更を!!


たかみちえ  URL  2003-03-13 09:26:45  No: 3139

んー、難しそうですね…。"できないことはない"とだけいっておきます。

"ファイルをつかませればいい"んですけど、これってヒントになるかな…。

  擬似的にマウスキャプチャして、カーソルをかえて…ってこともできますけど、汎用性はなさそうですね。


たかみちえ  2003-03-13 09:32:22  No: 3140

ここに
http://www.kcat.zaq.ne.jp/takao/
TarCtrlsというコンポーネント群があり、中に
TOleDropSource
  というものがあります。

  これはもしかしたら、目的の動作に使えるのではないでしょうか?

  BCB専用ですけど、DelphianWorldにDelphi訳があったような気がします。


ミズキ  2003-03-13 09:33:38  No: 3141

お返事ありがとうございます。
やっぱり難しいですか…妥協する方法はたくさんあるんですけど、できれば実現させたいです。
「ファイルをつかむ」ことはできるんですけど、「つかませる」のはなんとも。
まだまだ探してみますね。


にしの  2003-03-13 10:13:18  No: 3142

動作的には、たとえば圧縮解凍ソフトのように、自分のアプリケーションにあるファイル一覧から、エクスプローラにドラッグ、でしょうか。

たかみちえさんの紹介しているサイトに、OleDnD というものがあります。
これは、TarCtrlsのうちの、Ole Drag & Dropに関するコンポーネントをDelphi用に書き下ろしたもののようです。
この中に、TFileDropSourceコンポーネントという、まさにそのために使うコンポーネントがありますよ。
逆を行いたい場合(エクスプローラからアプリケーションにドラッグしたい場合)は、TFileDropTargetを使用します。


ミズキ  2003-03-13 10:28:52  No: 3143

OleDnDさっそく入手しました。
さっそく使ってみます。

Helpがないのが私には辛いのですが、
これも勉強だと思い試行錯誤しながら使ってみます。


そうせいじ  2003-03-13 18:15:29  No: 3144

有名どころですが、Torry's Delphi Pageで紹介されている
DragDropコンポーネントが非常に強力です。サンプルもある
ので、使い方も簡単にマスターできます。

http://www.torry.net/draganddrop.htm

もし、ヘルプがないので難しいということならば、こちらも
試してみては?


にしの  2003-03-13 19:06:37  No: 3145

OleDnDの使い方は簡単です。
ドラッグもとのコントロールを指定して(ここで指定したコントロールをドラッグするとファイルをドラッグしたことになる)、Directoryプロパティにファイルのパスを、Filesプロパティにファイル名を設定してやれば、あとは自動です。
FilesプロパティはTStringsなので、複数ファイルも可能です。ただし、同ディレクトリ内のファイルのみです。


ミズキ  2003-03-14 10:11:47  No: 3146

そうせいじさん御助言ありがとうございます。
私、英語できませんので少し厳しかったです。
先日、にしのさんに教えて頂いたOleDnDを使用させていただきました。
なんとか目的の機能も実現できました。

世の中にはすごい人がいるものです。
ソースを拝見したのですが、途中で妥協しました。
目標ではありますが、少しずつ勉強していこうと思っています。
また、ご迷惑をかけるかもしれませんがその時はどうぞよろしくお願いしますね。

それでは、たかみちえさん、そうせいじさん、にしのさん、ありがとうございました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加