如何让pywebview默认以带窗口控件的最大化状态启动本地HTML页面?
如何让pywebview默认以带窗口控件的最大化状态启动?
我尝试用pywebview默认以最大化窗口显示本地HTML页面,但所有尝试的方法均无效。现有代码如下:
from flask import Flask, send_from_directory import threading import webview import os ... webview.create_window('My React App', url='http://127.0.0.1:5000') webview.start()
已尝试的无效方法
- 设置
fullscreen=True:仅进入全屏状态,窗口框架消失,无法保留关闭、最小化等按钮
代码:webview.create_window('My React App', url='http://127.0.0.1:5000', fullscreen=True) - 获取屏幕尺寸并设置宽高:窗口虽接近最大化,但左右两侧存在10像素间隙
代码:screen_width = user32.GetSystemMetrics(0) screen_height = user32.GetSystemMetrics(1) root.geometry(f"{screen_width}x{screen_height}") webview.create_window("My React App",url="http://127.0.0.1:5000",width=screen_width, height=screen_height)
可行解决方案
跨平台通用方法
pywebview的窗口对象自带maximize()方法,可在窗口创建完成后调用,既能保留窗口框架和控件,又能实现标准最大化状态。
修改后的完整示例代码:
from flask import Flask, send_from_directory import threading import webview import os # 初始化Flask应用(根据你的实际需求编写) app = Flask(__name__) @app.route('/') def serve_index(): return send_from_directory('your_html_dir', 'index.html') def on_window_ready(window): # 窗口创建完成后执行最大化 window.maximize() if __name__ == '__main__': # 启动Flask服务(后台线程方式,避免阻塞) flask_thread = threading.Thread(target=lambda: app.run(debug=False), daemon=True) flask_thread.start() # 创建窗口 window = webview.create_window('My React App', url='http://127.0.0.1:5000') # 启动webview并传入窗口就绪回调 webview.start(on_window_ready, window)
Windows平台专用方法(兼容旧版pywebview)
如果使用的pywebview版本不支持maximize()方法,可通过Windows API直接发送窗口最大化消息:
from flask import Flask, send_from_directory import threading import webview import os import win32gui import win32con # ... 你的Flask代码 ... def maximize_window(): # 根据窗口标题获取句柄 hwnd = win32gui.FindWindow(None, 'My React App') if hwnd: # 发送最大化指令 win32gui.ShowWindow(hwnd, win32con.SW_MAXIMIZE) if __name__ == '__main__': # 启动Flask线程 flask_thread = threading.Thread(target=app.run, daemon=True) flask_thread.start() webview.create_window('My React App', url='http://127.0.0.1:5000') # 启动webview时调用最大化函数 webview.start(maximize_window)
内容的提问来源于stack exchange,提问作者Arad
相关产品推荐
相关产品推荐

