Ich bin mir nicht sicher über eine Möglichkeit, speziell auf HMENUs zu arbeiten, um zu sehen, ob das Menü angezeigt wird (und ein kurzer Scan der Plattform SDK-Dokumente nichts spezifisches ergab), aber Sie könnten möglicherweise verwenden die GetMenuItemInfo
Funktion, um eine MENUITEMINFO
Struktur zu erhalten, die sich auf den Menüpunkt bezieht, der das Dropdown besitzt. Wenn das fState
Mitglied MFS_HILITE
festgelegt hat, sollte das anzeigen, dass das Element ausgewählt ist und das Untermenü höchstwahrscheinlich geöffnet ist. Korrektheit ist nicht meinerseits garantiert, aber es lohnt sich, damit zu experimentieren.
würde Eine weitere mögliche Option FindWindow
mit der Klasse „# 32768“, die hWnd von was auch immer Menüs geöffnet sein kann zu finden, und das Senden der MN_GETHMENU
Nachricht an Unabhängig davon, welche Fenster finden Sie die HMENU
und vergleichen Sie es mit dem erwarteten Wert abzurufen von GetSubMenu
.