ポップアップメニューで、ダイアログが動かない

解決


極初心者  2007-12-02 16:07:32  No: 67054  IP: 192.*.*.*

.NET2005 VISTA MFC です。

ツリービューをサブクラスにして、

TrackPopupMenu(TPM_LEFTALIGN | TPM_RIGHTBUTTON, point.x, point.y, AfxGetMainWnd());

で、ノードを右クリックすると、フロータティングポップアップメニューがポップアップするようにしました。

ここまではうまくいったのですが、メニューのアイテムのクリックで、ダイアログがポップアップするようにしたところ、ポップアップはするのですが、そのダイアログが動きません。

不思議なことに、ダイアログ上でマウスを右クリックすると、メニューがまたポップアップします。
そのメニューを閉じると、ダイアログを操作できるようになります。

ヘンないいかたですが、どうも、ダイアログがポップアップしても、内部的にメニューが閉じていなくて、引きずっているような感じなのです。

いろいろ検索してみましたが、回答が見つかりません。
アドバイスをお願いします。

編集 削除
極初心者  2007-12-02 17:39:22  No: 67055  IP: 192.*.*.*

自己解決しました。

TrackPopupMenuの後に、

PostMessage(WM_NULL, 0L, 0L); 

を書き加えたら、動くようになりました。

たいへん失礼しました。

編集 削除