SendMessage всем окнам с определенным классом

76
14 декабря 2021, 03:30

Допустим у меня есть 3 запущенных параллельно окна с одним и тем же классом. При клике в одном из них я хочу отсылать с помощью SendMessage информацию остальным, как я могу это сделать? Интересует сам выбор всех окон по этому классу и отправка с помощью SendMessage

Answer 1

EnumWindows + GetClassName:

BOOL CALLBACK EnumWndProc(HWND wnd, LPARAM lParam) {
    if (wnd == (HWND)lParam) return TRUE; //пропускаем своё собственное окно
    TCHAR class_name[256]; // остальные фильтруем по имени класса:
    GetClassName(wnd, class_name, 256);
    if (wcscmp(class_name, MY_CLASS_NAME) == 0) { 
        SendMessage(wnd, WM_MYMESSAGE, WPARAM_VALUE, LPARAM_VALUE);
    }
    return TRUE;
}
...
EnumWindows(EnumWndProc, (LPARAM)my_hwnd);
READ ALSO
Qt C++ QComboBox Palette - установка цвета (background-color)

Qt C++ QComboBox Palette - установка цвета (background-color)

Как без использования styleSheet изменить background-color QComboBox ? Используя вот такой код:

172
Метод, считывающий данные из потока ввода и возвращающий char[n]

Метод, считывающий данные из потока ввода и возвращающий char[n]

Необходимо прочесть из потока ввода данные ( терминал ), включая пробел, при этом не записывая их сразуДопустим я хочу выяснить, строка какого...

80
Как задать фокус полю клинированной формы?

Как задать фокус полю клинированной формы?

Клонирую формуКак у клонированной формы полю задать фокус?

177