【发布时间】:2013-10-01 22:25:25
【问题描述】:
通过指定 directfb 后端启动嵌入式 Qt 应用程序时,可以使用特定语法向其传递参数
./my-qt-app -qws -display directfb:960x720
这将改变分辨率。
假设我想从应用程序窗口中删除镶边。由于 directfb 有很多选项,我如何通过命令行指定它们?应该寻找内部 Qt 实现还是使用 DirectFB 项目指定的 CLI 参数?
UPDATE 虽然有一种机制使用冒号将参数传递给 显示后端,在 directfb 情况下,它不适用于分辨率更改。
【问题讨论】:
-
钻研源码,好像DirectFB参数是由
qt-4.8.5/src/gui/embedded/qscreenlinuxfb_qws.cpp实现的Linux Screen Framebuffer插件处理的。它确实接收以冒号分隔的列表中的参数,例如nographicsmodeswitch、genericcolors、tty=(.\*)和/dev/fb0帧缓冲区设备规范,但是,显示分辨率是通过名为QWS_SIZE的环境变量使用@987654328 计算的@ 格式。