python使用win32api设置控制台全屏(或最大窗口大小)

时间:2017-07-12 14:51:04

标签: python winapi cmd

因此我尝试在启动时将控制台窗口调整为最大大小。

我尝试使用win32api如下:

import win32api

console_handle = win32api.GetStdHandle(win32api.STD_OUTPUT_HANDLE)
win32api.SetConsoleDisplayMode(console_handle, CONSOLE_FULLSCREEN_MODE)

但是它说win32api没有SetConsoleDisplayMode函数。

3 个答案:

答案 0 :(得分:2)

我修改了此链接中的代码以实现它: How do I get monitor resolution in Python?

这是我的下面的代码,该代码查看屏幕的最大尺寸,如果屏幕大于预定尺寸(1366 x 768),则会填充屏幕。我可以显示程序的最小屏幕分辨率为1366 x 768。

from win32api import GetSystemMetrics

print("Width =", GetSystemMetrics(0))
print("Height =", GetSystemMetrics(1))

if GetSystemMetrics(0) >= 1366 and GetSystemMetrics(1) >= 768:
    Window.size = (GetSystemMetrics(0), GetSystemMetrics(1))
    Window.fullscreen = True
else: 
    Window.size = (1366, 768)

这对我来说适用于“ Windows”系统。您必须测试其他系统。

答案 1 :(得分:0)

有一个Windows命令可以改变控制台的大小:

import os
os.system("mode con cols=50 lines=20")

cols是宽度,line是高度

答案 2 :(得分:0)

使用win32console而不是win32api:

import win32console
h = win32console.GetStdHandle(win32console.STD_OUTPUT_HANDLE)
h.SetConsoleDisplayMode(win32console.CONSOLE_FULLSCREEN_MODE, win32console.PyCOORDType(0,0))