查看完整版本: [-- qt界面大小调整 --]

QTCN开发网 -> Qt嵌入式开发 -> qt界面大小调整 [打印本页] 登录 -> 注册 -> 回复主题 -> 发表主题

梦幻情缘 2018-11-13 13:46

qt界面大小调整

请问各位大佬,我在移植qt程序到开发板上,运行程序的时候总是全屏显示,怎么才能调整窗口大小,程序里已经加入了改变窗口的语句
setFixedSize(365,240);
不过没有效果~

大漠之鹰 2018-11-13 14:27
现在Qt5的LinuxFb和eglfs只支持全屏显示,可以使用qtwayland来实现多窗口显示,不过需要opengl支持

笑颜 2018-11-14 09:00
应该是这样的: Qt5在没有窗口管理的系统上,至少有一个窗口全屏,因此哪个窗口第一个显示,那么那个窗口就会被全屏。并且任意窗口都没有边框,因此需要你自己实现关闭最大化移动等效果

所以,解决办法就是: 在你主窗口显示之前先窗口一个任意的窗口作为桌面,比如QLabel(可以添加一些东西作为背景)。
代码如下:

int main(int argc, char *argv[])
{
    QApplication a(argc, argv);
    QLabel ww(QStringLiteral("桌面窗口"));
    ww.show();

    MainWindow w;
    w.move(100, 100);
    w.resize(300, 300);
    w.show();


    return a.exec();
}

当然,推荐使用有窗口管理的系统,比如国产嵌入式实时操作系统SylixOS,带有Qt5支持,利用qtwayland模块,搭建一款窗口管理,几乎所有Qt5写的代码都可以直接运行,性能也不错,自带中文输入法。算是帮公司打个广告,毕竟这个东西是我写的,哈哈哈哈

cycloveu 2018-11-14 10:55
笑颜:应该是这样的: Qt5在没有窗口管理的系统上,至少有一个窗口全屏,因此哪个窗口第一个显示,那么那个窗口就会被全屏。并且任意窗口都没有边框,因此需要你自己实现关闭最大化移动等效果
所以,解决办法就是: 在你主窗口显示之前先窗口一个任意的窗口作为桌面,比如QLabel(可以 .. (2018-11-14 09:00) 

元心 前生是MeeGo吧

笑颜 2018-11-14 17:23
cycloveu:元心 前生是MeeGo吧 (2018-11-14 10:55) 

啥?你在说啥?


查看完整版本: [-- qt界面大小调整 --] [-- top --]



Powered by phpwind v8.7 Code ©2003-2011 phpwind
Gzip disabled