You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python Eel如何实现程序启动时UI全屏显示?

解决Eel程序启动自动全屏的方案

方法一:调整Chrome命令行参数

之前使用--kiosk无效,可能是打包后Chrome启动逻辑被PyInstaller修改,或是参数需要搭配其他选项。可以尝试以下两种参数组合:

方案1:使用原生全屏启动参数

import eel
import io
import sys

stream = io.StringIO()
sys.stdout = stream
sys.stderr = stream

eel.init(".")
@eel.expose
def python():
    pass

# 用--start-fullscreen替代--kiosk,搭配禁用首次运行提示和信息栏
eel.start(
    "home.html",
    mode="chrome",
    cmdline_args=[
        "--start-fullscreen",
        "--no-first-run",
        "--disable-infobars"
    ]
)

方案2:结合屏幕分辨率与最大化参数

先获取屏幕尺寸,再设置窗口大小并配合最大化参数:

import eel
import io
import sys
from screeninfo import get_monitors

stream = io.StringIO()
sys.stdout = stream
sys.stderr = stream

# 获取主屏幕分辨率
monitor = get_monitors()[0]
screen_width, screen_height = monitor.width, monitor.height

eel.init(".")
@eel.expose
def python():
    pass

eel.start(
    "home.html",
    mode="chrome",
    size=(screen_width, screen_height),
    cmdline_args=["--start-maximized"]
)

注意:需先安装screeninfo库:pip install screeninfo

方法二:通过前端JavaScript实现全屏

这种方式不受浏览器启动参数限制,可靠性更高。在home.html页面加载完成后触发全屏逻辑:

<!DOCTYPE html>
<html>
<head>
    <title>Eel Fullscreen</title>
    <script type="text/javascript" src="/eel.js"></script>
</head>
<body onload="enterFullscreen()">
    <!-- 页面内容 -->
    <script>
        function enterFullscreen() {
            const elem = document.documentElement;
            // 兼容不同浏览器的全屏API
            if (elem.requestFullscreen) {
                elem.requestFullscreen();
            } else if (elem.webkitRequestFullscreen) {
                elem.webkitRequestFullscreen();
            } else if (elem.msRequestFullscreen) {
                elem.msRequestFullscreen();
            }
        }
    </script>
</body>
</html>

Python代码保持基础启动逻辑即可:

import eel
import io
import sys

stream = io.StringIO()
sys.stdout = stream
sys.stderr = stream

eel.init(".")
@eel.expose
def python():
    pass

eel.start("home.html")

方法三:PyInstaller打包注意事项

打包时需确保参数和资源文件正确传递:

  • 生成.spec文件:pyi-makespec your_script.py
  • 编辑.spec文件,确保web资源文件(如home.html)被包含到打包目录,避免程序启动时找不到页面
  • 若使用命令行参数方案,需确认打包后Chrome的启动参数未被PyInstaller覆盖

内容的提问来源于stack exchange,提问作者Suprava

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.30 08:10:12