アプリケーションのドロップを拒否すると、エラーメッセージを表示する必要があります。
これを試してみましたOnDrop()
が、メッセージボックスが閉じられるまでソースアプリケーションがハングします。
どうやってやるの?
アプリケーションのドロップを拒否すると、エラーメッセージを表示する必要があります。
これを試してみましたOnDrop()
が、メッセージボックスが閉じられるまでソースアプリケーションがハングします。
どうやってやるの?
WM_APP範囲のプライベートメッセージを使用してPostMessageをいつでも呼び出すことができ、メッセージハンドラーにエラーが表示されます。
そうすれば、ドラッグアンドドロップ操作が実際に終了した後にエラーを表示でき、何かを台無しにする危険はありません。
あなたが正しい。しかし、メッセージボックスで報告する必要のあるすべてのデータはOnDropにあります。
データが必要な場合は、OnDrop にコピーして一時的な場所に保存し、WM_APP 範囲メッセージで一時的な場所にあるデータにインデックスを渡します。WM_APP メッセージのハンドラーは、メッセージ ボックスを表示した後に一時データをクリーンアップできます。