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

使用pyi_splash.update_text()在启动屏显示文本失败求助

PyInstaller启动屏update_text()不显示文本的解决办法

首先明确:pyi_splash.update_text()完全支持Windows系统,你的问题不是系统兼容性导致的,大概率是缺少文本显示的必要配置。以下是具体排查和解决步骤:

  • 必须在构建时配置文本显示参数
    默认情况下,启动屏没有预设文本的字体大小、颜色、位置等属性,即便调用update_text(),文本也可能因颜色和背景重合、位置超出画布或字体尺寸为0而不可见。你需要在pyinstaller构建命令中添加相关参数:

    • --splash-text:设置初始占位文本(后续会被update_text替换)
    • --splash-text-size:指定字体大小,例如14
    • --splash-text-color:设置文本颜色,支持十六进制值(如#FFFFFF)或RGB格式
    • --splash-text-pos:定义文本位置,格式为x,y(例如20,20表示左上角偏移20像素)
      示例构建命令:
    pyinstaller --splash myimage.png --splash-text "加载中..." --splash-text-size 14 --splash-text-color #FFFFFF --splash-text-pos 20,20 your_script.py
    
  • 调整update_text的调用时机
    虽然pyi_splash.is_alive()返回True,但启动屏的UI初始化可能尚未完成,建议在调用update_text前添加短暂延迟:

    import pyi_splash
    import time
    
    if pyi_splash.is_alive():
        time.sleep(0.1)  # 给启动屏UI初始化留一点时间
        pyi_splash.update_text("正在初始化组件...")
        # 后续业务逻辑
        pyi_splash.close()
    
  • 检查文本与背景的对比度
    如果文本颜色和启动屏图片的背景颜色过于接近,也会导致文本被掩盖。确认你设置的文本颜色和图片背景有明显差异,比如深色背景用浅色文本,反之亦然。

  • 升级PyInstaller到最新版本
    旧版本的PyInstaller可能存在启动屏文本更新的bug,执行以下命令升级:

    pip install --upgrade pyinstaller
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 18:57:02