.NET2005 VISTA MFC です。
ツリービューをサブクラスにして、
TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, AfxGetMainWnd());
で、ノードを右クリックすると、フロータティングポップアップメニューがポップアップするようにしました。
ここまではうまくいったのですが、メニューのアイテムのクリックで、ダイアログがポップアップするようにしたところ、ポップアップはするのですが、そのダイアログが動きません。
不思議なことに、ダイアログ上でマウスを右クリックすると、メニューがまたポップアップします。
そのメニューを閉じると、ダイアログを操作できるようになります。
ヘンないいかたですが、どうも、ダイアログがポップアップしても、内部的にメニューが閉じていなくて、引きずっているような感じなのです。
いろいろ検索してみましたが、回答が見つかりません。
アドバイスをお願いします。
自己解決しました。
TrackPopupMenuの後に、
PostMessage(WM_NULL, 0L, 0L);
を書き加えたら、動くようになりました。
たいへん失礼しました。
ツイート | ![]() |