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())优先级高于命令行参数。
相关推荐
love530love14 分钟前
技术复盘:llama-cpp-python CUDA 编译实战 (Windows)
人工智能·windows·python·llama·aitechlab·cpp-python·cuda版本
逄逄不是胖胖1 小时前
《动手学深度学习》-60translate实现
人工智能·python·深度学习
橘颂TA1 小时前
【测试】自动化测试函数介绍——web 测试
python·功能测试·selenium·测试工具·dubbo
爱学习的阿磊1 小时前
Python上下文管理器(with语句)的原理与实践
jvm·数据库·python
m0_736919101 小时前
Python面向对象编程(OOP)终极指南
jvm·数据库·python
one____dream1 小时前
【网安】Reverse-非常规题目
linux·python·安全·网络安全·ctf
冷雨夜中漫步1 小时前
python反转列表reverse()和[::-1]哪个效率更高
开发语言·python
rainbow68891 小时前
Python面向对象编程与异常处理实战
开发语言·python
weixin199701080162 小时前
锦程物流item_get - 获取详情接口对接全攻略:从入门到精通
数据库·python
2501_907136822 小时前
基于Python+QT6的移动硬盘弹出工具
python·软件需求