ダルメシアン


ダルメシアン  2006-01-28 17:45:21  No: 60583

リストビューでのドラッグ&ドロップで、マウスポインタを移動中に、マウスポインタのある行を、一時的に青色反転表示させる方法がわかりません。

マウスポインタが動いている間、その座標にあるリストビューの行を次々に青色反転表示させていきたいと思いました。

ツリービューでは、SelectDropTargetで実現できるのですが、MSDNを探しても、ネット検索させても、リストビューでそれに対応するものを見つけることができません。

アドバイスをお願いいたします。

WINXP  .NET  MFC  です。


ダルメシアン  2006-01-28 17:47:34  No: 60584

すみません。タイトルに名前を書いてしまいました。

改めて、新規で質問しなおしたほうが、いいでしょうか。


シャノン  2006-01-29 07:17:35  No: 60585

LVS_EX_UNDERLINEHOT でいかがでしょう?  反転表示ではありませんが…
どうしても反転表示したいのなら、カスタムドローを使うことになるかと思います。


ダルメシアン  2006-01-29 14:56:54  No: 60586

LVS_EX_UNDERLINEHOT と LVS_EX_ONECLICKACTIVATE で、アンダーラインを引くことはできたのですが、これだとマウスが乗った時は常にアンダーラインが表示されてしまいます。

ドラッグ&ドロップ中だけ、アンダーラインが表示される、よい方法はありませんでしょうか。

ネット検索したら、WM_MOUSEMOVEとHittestを組み合わせる、みたいなことを書いたサイトがありましたが、実際のコードは載っていませんでした。
全然ピンときません。

フラグをたてて、SetExtendedStyleのところで拡張スタイルあり/なしを振り分け、再描画させたらどうだろうと思ったのですが、それもなんだか気が利きません。

アドバイスをお願いいたします。


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

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






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