【问题标题】:python setting console fullscreen(or maximum window size) using win32apipython使用win32api设置控制台全屏(或最大窗口大小)
【发布时间】:2017-12-17 01:57:04
【问题描述】:

所以我正在尝试将控制台窗口的大小调整为启动时的最大大小。

我尝试使用win32api如下:

import win32api

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

但它说win32api没有SetConsoleDisplayMode函数。

【问题讨论】:

    标签: python winapi cmd


    【解决方案1】:

    我修改了这个链接的代码来实现它: 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”系统。您必须测试其他系统。

    【讨论】:

      【解决方案2】:

      使用 win32console 代替 win32api:

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

      【讨论】:

      • 它说句柄无效:/
      • 我知道我注意到它并改变了,仍然是同样的错误
      【解决方案3】:

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

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

      cols 是宽度,lines 是高度

      【讨论】:

      • 谢谢!帮助很大。但另一件事是如何定位控制台,使其不会伸出,因为这样控制台就可以满足我的需要,但右侧和底部都伸出屏幕,知道如何修复它吗?跨度>
      猜你喜欢
      • 1970-01-01
      • 2014-11-12
      • 2013-10-05
      • 2022-06-18
      • 1970-01-01
      • 2014-03-29
      • 2023-04-11
      • 2021-04-25
      • 1970-01-01
      相关资源
      最近更新 更多