Ответ 1
От Nish:
Включение диалога вверх
Разве вы не видели программы, которые вариант "всегда оставаться на вершине"? Что ж невероятное, что вы можете сделайте свой диалог на вершине с помощью одна строка кода. Просто следующая строка в вашем классе диалога Функция OnInitDialog().
SetWindowPos(&this->wndTopMost,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
В основном то, что мы делаем, это использовать функция SetWindowPos для изменения Z-порядок нашего диалогового окна. Мы заставьте наш диалог оставаться на вершине всех другие окна, переместив их на верх Z-порядка. Теперь, даже когда вы активировать другое окно, наше окно останется на вершине. Но я бы посоветовал вам чтобы вы точно знали, что вы делают, когда вы это делаете, для этого могут раздражать людей, если они не могут получить ваше окно с дороги, когда они хочу сделать это.
Как вы упомянули в комментариях, приведенная выше строка делает окно сидеть поверх каждого приложения. Вам нужно будет сделать
SetWindowPos(&this->wndTop,0,0,0,0,SWP_NOMOVE|SWP_NOSIZE);
Чтобы сделать окно сидеть поверх всего вашего приложения.
-Adam