QT,sys.argv支持的核心内置参数

以下是 Qt 官方文档中定义的核心内置参数(适用于 PySide6/PyQt6,Qt 5/6 通用,部分参数版本有差异):

一、核心通用参数

参数 作用 示例
-style <样式名> 指定应用程序的样式(如 fusion、windows、macintosh 等) -style fusion
-stylesheet <文件路径/字符串> 加载全局 QSS 样式表(支持文件路径或直接传入样式字符串) -stylesheet ./style.qss
-stylevariant <变体> 样式变体(仅部分样式支持,如 windows 样式的 normal/highcontrast -stylevariant highcontrast
-platform <平台插件> 指定 Qt 平台插件(控制窗口系统适配) -platform windows(Windows)、-platform cocoa(macOS)、-platform xcb(Linux)
-platformpluginpath <路径> 指定平台插件的搜索路径 -platformpluginpath ./plugins/platforms
-plugin <插件名> 加载指定的 Qt 插件 -plugin sqldrivers/sqlite
-qmljsdebugger <参数> 启用 QML/JS 调试器(如端口、等待连接等) -qmljsdebugger port:1234,block
-translation <翻译文件> 加载 Qt 内置字符串的翻译文件(影响 Qt 自身控件的文本) -translation ./qt_zh_CN.qm
-lang <语言代码> 设置应用程序的默认语言(优先级低于系统语言) -lang zh_CN
-dir <工作目录> 设置应用程序的工作目录 -dir /home/user/app
-display <显示ID> (Linux/X11)指定显示设备(如 X11 的 :0.0) -display :0.0
-geometry <宽x高+x+y> 设置主窗口的初始几何尺寸(宽、高、x 坐标、y 坐标) -geometry 800x600+100+100
-font <字体参数> 设置应用程序默认字体(格式:[家族],[大小],[粗体],[斜体] -font "Microsoft YaHei,12,bold,italic"
-icon <图标文件> 设置应用程序的默认图标 -icon ./app.ico
-reverse 启用布局的反向模式(适配从右到左的语言,如阿拉伯语) -reverse
-no-svg 禁用 SVG 支持 -no-svg
-graphicssystem <后端> (Qt5 废弃,Qt6 移除)指定图形渲染后端(如 raster/opengl) -graphicssystem opengl
-opengl <模式> 指定 OpenGL 模式(desktop/angle/software) -opengl angle
-dpi <数值> 设置应用程序的 DPI 缩放(Qt6 推荐用 -scale -dpi 144
-scale <缩放因子> (Qt6)设置全局缩放因子(浮点数,如 1.5) -scale 1.25
-scaling <策略> (Qt6)DPI 缩放策略(off/auto/round/ceil/floor) -scaling auto

二、调试 / 开发相关参数

参数 作用
-verbose 启用详细日志输出(部分模块生效)
-qmldebug <参数> -qmljsdebugger,简化版
-no-gpu 禁用 GPU 加速(强制软件渲染)
-no-native-gestures 禁用原生手势支持
-force-high-dpi-scaling 强制启用高 DPI 缩放(Qt5 兼容)
-ignore-gpu-blacklist 忽略 GPU 黑名单(强制使用 GPU 渲染)

三、平台专属参数

Windows
  • -console:强制显示控制台窗口(即使是 GUI 程序)
  • -no-taskbar-icon:禁用任务栏图标
  • -high-dpi-aware:标记应用为高 DPI 感知
macOS
  • -native-menubar:使用原生菜单栏
  • -no-quartz:禁用 Quartz 渲染
  • -fullscreen:启动时全屏
Linux (X11/Wayland)
  • -xcb:强制使用 XCB 后端
  • -wayland:强制使用 Wayland 后端
  • -no-xshm:禁用 X Shared Memory 扩展
  • -xim:启用 X 输入方法

四、使用注意事项

  1. 参数解析时机QApplication 初始化时会解析这些参数,并从 sys.argv 中移除已识别的参数(因此后续代码无法获取这些参数)。
  2. 自定义参数 :如果需要自定义命令行参数,建议在 QApplication 初始化之后解析(避免被 Qt 误判)。
  3. 版本差异 :Qt6 移除了部分 Qt5 过时参数(如 -graphicssystem),新增了 -scale/-scaling 等高 DPI 相关参数。
  4. 优先级 :代码中设置的属性(如 app.setStyle())优先级高于命令行参数。
相关推荐
FishCoderh8 分钟前
Python自动化办公实战:批量重命名文件,告别手动操作
python
躺平大鹅11 分钟前
Python函数入门详解(定义+调用+参数)
python
曲幽1 小时前
我用FastAPI接ollama大模型,差点被asyncio整崩溃(附对话窗口实战)
python·fastapi·web·async·httpx·asyncio·ollama
两万五千个小时5 小时前
落地实现 Anthropic Multi-Agent Research System
人工智能·python·架构
哈里谢顿7 小时前
Python 高并发服务限流终极方案:从原理到生产落地(2026 实战指南)
python
用户83562907805121 小时前
无需 Office:Python 批量转换 PPT 为图片
后端·python
markfeng81 天前
Python+Django+H5+MySQL项目搭建
python·django
GinoWi1 天前
Chapter 2 - Python中的变量和简单的数据类型
python
JordanHaidee1 天前
Python 中 `if x:` 到底在判断什么?
后端·python
ServBay1 天前
10分钟彻底终结冗长代码,Python f-string 让你重获编程自由
后端·python