こん@@は、どうしても出来なくて困ってます。
vb.netにおいて、リッチテキストボックスへのドラッグアンドドロップで、ファイルそのものを貼り付けたいのですが、どうしても出来ません。
ワードパッドや、outlookの文字入力部分にファイルをドラッグしたらアイコン状態でファイルが張り付きますよね?
このような動作をvb.netのRichTextBoxにて実装したいのです。(ダブルクリックしたらそのファイルを開けれる状態で貼り付けたい)
vb6.0だとRichTextBoxを作成するだけでその辺のことは最初から出来るのですが、vb.netだとうまく行きません。
現状AllowDropとかはTrueにもちろんしています。
MSDN Library 等調べてもtextやビットマップを貼り付けると言うような情報しか得られませんでした。
どなたか、わかる方がいらっしゃいましたら教えてください。
お願いします。
投稿日時 - 2004-08-05 11:32:06
質問者が選んだベストアンサー
WindowsフォームのRichTextBoxコントロールはOLEオブジェクトの埋め込みには対応していないので、残念ながらお望みのことはできません。
もしVB6をお持ちなのでしたら、VB6のRichTextBoxコントロールをVB.NETで使うことによって、VB6でやっていたのと同じように、OLEオブジェクトの埋め込みができます。
手順はこんな感じです。
1. VB6のRichTextBoxコントロール(RichTx32.ocx)を、VB.NETのマシンにコピーして、Regsvr32.exe を使って登録する。
2. VB.NETを起動して、ツールボックスの上で右クリックして、"アイテムの追加と削除"を選択
3. [ツールボックスのカスタマイズ]ダイアログの"COMコンポーネント"のところに"Microsoft Rich Textbox Control"が追加されているので、チェックを入れて、OKボタンをクリック
上記の手順で、VB6のRichTextBoxコントロールがVB.NETのツールボックスに追加されます。あとはふつうにフォームに貼り付けてプログラミングしてください。
なお、VB6とVB.NETが共存しているマシンでしたら1の手順は要りません。
投稿日時 - 2004-08-05 19:13:13
ありがとうござます、上記方法でドラッグによるファイル貼り付けが出来るようになりました。
[RichTx32.ocx]は以前VB6を入れていたためか解りませんが、既に[\\system32]内にありましたので、それを利用いたしました。
6.0 → .netの乗り換えで今まで出来ていたことが、普通に出来なくなってたりして、互換性がいまいと言う気がするのですが、その辺ってMSさんはどう考えてるのでしょうね?(駄文)
とにかくありがとうございました。
VB6のRichTextBoxコントロールを使用することによって、コンテキストメニュー部分の記述等今までのままではどうもダメみたいですが....(記述方法の違いがぁ....)
続けてプログラミングしていきたいと思います。
投稿日時 - 2004-08-06 15:47:47
このQ&Aは役に立ちましたか?
3人が「このQ&Aが役に立った」と投票しています
回答(0)
あなたにおすすめの質問
- OLE ドラッグアンドドロップの代わ... OLE ドラッグアンドドロップの代わりに
- @@ERRORと@@ROWCOUNT... @@ERRORと@@ROWCOUNT併用について
- Ajax Updaterでドラッグア... Ajax Updaterでドラッグアンドドロップ
- ドロップ機能の実装方法 ドロップ機能の実装方法
- ドラッグアンドドロップ ドラッグアンドドロップ
- ドラッグアンドドロップ ドラッグアンドドロップ
- 焼くvsドラッグアンドドロップ 焼くvsドラッグアンドドロップ
- ドラッグアンドドロップでファイルを読... ドラッグアンドドロップでファイルを読み込む方法を教えて下さい。
- ファイルのドラッグアンドドロップ ファイルのドラッグアンドドロップ
- アイコンにドラッグアンドドロップ アイコンにドラッグアンドドロップ