Страница 1 из 1
Как сделать окно поверх всех окон Винды?
Добавлено: 26 Ноябрь 2015, 11:15
kreator
Собственно, сабж. Естественно, нужно программно.
Как сделать окно поверх всех окон Винды?
Добавлено: 26 Ноябрь 2015, 11:38
PavelNK
Если память не изменяет, то SetWindowPos
Как сделать окно поверх всех окон Винды?
Добавлено: 26 Ноябрь 2015, 13:46
Yufil
В последних версиях винды, похоже, и это не работает.
По крайней мере, старый менеджер компиляции cmp60 сейчас не вылазит наверх

, стар стал, наверное...
Можно попробовать просто
0{Prop:Active} = True
Или
SetTarget(,1)
0{Prop:Active} = True
SetTarget
Как сделать окно поверх всех окон Винды?
Добавлено: 26 Ноябрь 2015, 13:50
Дед Пахом
У меня вот такая конструкция работает:
Код: Выделить всё
Routine::BringToTop ROUTINE
DATA
CODE
IF gTHD:FrameRef{PROP:Iconize} = TRUE
gTHD:FrameRef{PROP:Iconize} = FALSE
LOOP 10 TIMES
IF SetForegroundWindow(gTHD:FrameRef{PROP:Handle}) = TRUE
BREAK
END
END
END
IF Window{PROP:Active} <> TRUE
Window{PROP:Active} = TRUE
END
gTHD:FrameRef - это APPLICATION
Window - это MDI child window
Как сделать окно поверх всех окон Винды?
Добавлено: 26 Ноябрь 2015, 15:12
kreator
Спасибо, ДП. Приложение и окно поднимаются. А вот вроде как есть возможность сделать окно, которое всегда будет висеть поверх других приложений, типа без возможности переключиться на другое приложение. Или я что-то не так понимаю?
Как сделать окно поверх всех окон Винды?
Добавлено: 26 Ноябрь 2015, 15:19
Yufil
А какая Windows? У меня до какого-то момента было всё OK, а потом облом-с, правда, юзал SetWindowPos
Возможно, это для 64-битных актуально.
Например,
http://www.dxsdata.com/2013/03/c-bring- ... vista-7-8/
https://groups.google.com/forum/#!topic ... Hk7IkAAf9s
и много других... Сейчас пару приложений пустил (тот же cmp60) под win7/64 - да, не работает
Сейчас реализовал по-другому, но осадок остался

Как сделать окно поверх всех окон Винды?
Добавлено: 26 Ноябрь 2015, 15:59
kreator
Yufil писал(а):А какая Windows?
Win7-64. Повторил код ДП один в один. В широкую эксплуатацию не скоро пустим. Пока идёт сбор требований заказчика.