Как перевести окно из полноэкранного в оконный режим?
Модераторы: Duncon, Naeel Maqsudov, Игорь Акопян, Хыиуду
Ну вообще так
или такYourForm.WindowState := wsNormal;
ShowWindow(YourWindow.Handle, SW_SHOWNORMAL);
It's a long way to the top if you wanna rock'n'roll
Извиняюсь что не уточнил сразу, имеется ввиду что окно чужого приложения.
-
- Сообщения: 340
- Зарегистрирован: 22 ноя 2004, 19:15
- Откуда: Минск
- Контактная информация:
Ишешь это окно допустим по названию, а потом делаешь с ним вссе что хочеь
Просто набрать исходники может и любая обезьяна, а придумать и отладить не каждый человек.
Поймать окно то я поймал, а вот перевести через ShowWindow всеми вариантами пробовал не помогает.
HWND := FindWindow('TMainForm', 'MainForm');
ShowWindow(HWND, SW_SHOWNORMAL);
Такой код работает, но есть загвоздка. Если первоначальные параметры окна (длина, ширина) больше габаритов экрана, то
SW_NORMAL - практически тоже самое, что и SW_MAXIMIZE.
А если прога использует DirectX - то тут посложнее будет. Окно может быть вообще свернуто - прога будет использовать поверх-
ность отличную от виндовой и они никак взаимодействовать не будут.
Винда плохо справляется с переходом из полноэкранных игр, работающих через DirectX. Иногда рабочий стол может и не
появиться ;-)
ShowWindow(HWND, SW_SHOWNORMAL);
Такой код работает, но есть загвоздка. Если первоначальные параметры окна (длина, ширина) больше габаритов экрана, то
SW_NORMAL - практически тоже самое, что и SW_MAXIMIZE.
А если прога использует DirectX - то тут посложнее будет. Окно может быть вообще свернуто - прога будет использовать поверх-
ность отличную от виндовой и они никак взаимодействовать не будут.
Винда плохо справляется с переходом из полноэкранных игр, работающих через DirectX. Иногда рабочий стол может и не
появиться ;-)
It's a long way to the top if you wanna rock'n'roll
Попробуй просто сделать Resize - установи новую высоту и ширину и опять вызови ShowWindow. Это должно привести к апдейту окна. Может получиться - все от проги зависит. Прога возможно что-то делает на OnResize и не хочет, чтобы ее как-то меняли.
It's a long way to the top if you wanna rock'n'roll
Прога работает в режиме 640х480, возможно нужно поменять разрешение экрана при развернутой программе, как это сделать?