【发布时间】:2015-03-24 10:41:13
【问题描述】:
如何从我的 python 应用程序中运行外部应用程序并在第二个屏幕上显示外部程序?不幸的是,我的主 GUI 和外部 GUI 不能放在一个屏幕上。
到目前为止,我使用了 subprocess 模块和 Popen 构造函数,但我觉得没有提供所需的功能。
我考虑将 STARTUPINFO (https://docs.python.org/2/library/subprocess.html#windows-popen-helpers) 助手合并到子进程中,但我没有找到适合我的问题的选项。
如果感兴趣的话,外部应用程序是用 C++ 和 C# 编写的。
谢谢大家!
编辑:我使用 Windows 7 和双显示器设置(确切地说是笔记本电脑 + 显示器)。
第二次编辑:我自己找到了一个可能的答案:
from win32api import GetSystemMetrics
import win32gui
import win32con
window = win32gui.GetForegroundWindow() # retrieves the freshly opened window
win32gui.MoveWindow(window, GetSystemMetrics(0), 0, 0, 0, True) # translates it about the main monitor width
win32gui.ShowWindow(window, win32con.SW_MAXIMIZE) # maximizes the window
我没有回答自己,因为这不是我所要求的。对于我的需要,解决方案就足够了,但我很乐意提供进一步的建议。
【问题讨论】:
-
这个问题是关于双显示器设置还是命令行工具
screen?STARTUPINFO是什么? -
你指的是控制台窗口吗?如果是这样,请参阅 STARTUPINFO 的创建标志中的 CREATE_NEW_CONSOLE
-
我更新了问题。很抱歉不准确
-
为什么是屏幕而不是窗口?
-
我对窗口也很好,我是 GUI 编程新手,对术语还不太熟悉。
标签: python subprocess