У меня есть код, который получает дескриптор окна, на который указывает курсор мыши, и я должен определить, указывает ли курсор мыши на окно, которое не является частью панели задач. Мой код может распознать, если я указываю на панель задач, кнопку «Пуск» и кнопку «Показать рабочий стол» (в Windows 7). Но я не могу распознать, указываю ли я на вид миниатюр комбинированных окон (см. Изображение ниже).
Это код, который я использую для распознавания панели задач:
m_hTaskBar = FindWindow("Shell_TrayWnd", "");
m_hTaskBar = GetAncestor(m_hTaskBar, GA_ROOT);
// This code is at a mouse move event:
POINT p;
GetCursorPos(&p);
HWND hWnd = GetAncestor(WindowFromPoint(p), GA_ROOT);
m_hSelectedWin = hWnd;
bool isTaskBar = m_hSelectedWin == m_hTaskBar || GetParent(m_hSelectedWin) == m_hTaskBar;
Как я могу проверить, указывает ли курсор на вид миниатюр комбинированных окон? Благодарю.
Мне удалось найти решение:
FindWindow("TaskListThumbnailWnd", "");
Я использовал Spy ++, чтобы найти имя класса в окне эскизов панели задач.
Spy ++ можно использовать из Visual Studio (Инструменты> Spy ++).
Вы также можете найти его через Autohotkey Window Spy.