メニューがwin32 APIにドロップされたかどうかを判断する方法はありますか?そのように使うことができるもの:メニューがドロップされているかどうかを確認する
HMENU hMenu = GetMenu(hWnd);
HMENU hSubMenu = GetSubMenu(hMenu);
// hSubMenuがドロップダウンしましたか?
メニューがwin32 APIにドロップされたかどうかを判断する方法はありますか?そのように使うことができるもの:メニューがドロップされているかどうかを確認する
HMENU hMenu = GetMenu(hWnd);
HMENU hSubMenu = GetSubMenu(hMenu);
// hSubMenuがドロップダウンしましたか?
メニューが表示されているかどうかを確認するためにHMENUを特別に操作する方法はわかりません(プラットフォームのSDKドキュメントのクイックスキャンでは何も表示されませんでした)が、 GetMenuItemInfo
は、ドロップダウンを所有するメニュー項目に関連してMENUITEMINFO
構造体を取得する関数です。 fState
のメンバーがMFS_HILITE
に設定されている場合は、そのアイテムが選択され、サブメニューが開いている可能性が高いことを示します。私のところでは正確さは保証されていませんが、実験する価値があります。
別の可能なオプションは、メニューが開いているかもしれ何のhWndをを見つけるために、クラス「#32768」とFindWindow
を使用して、そしてHMENU
を取得し、期待値と比較するためにあなたを見つける方の窓にMN_GETHMENU
メッセージを送るだろうGetSubMenu
から。