• 7274阅读
  • 4回复

[提问]QML中如何加载登陆界面 [复制链接]

上一主题 下一主题
离线lovexin109
 

只看楼主 倒序阅读 楼主  发表于: 2014-07-13
建了一个QT Quick Application,在里面建了一个登陆界面,里面建了一个loadin.qml,
如下图:


请问我如何做到在main.qml加载前加载loadin.qml呢??
在main.cpp里修改engine.load(QUrl(QStringLiteral("qrc:///loadin.qml")));运行什么也不显示,我觉得我的思路可能有问题
#include <QApplication>
#include <QQmlApplicationEngine>
int main(int argc, char *argv[])
{
    QApplication app(argc, argv);
    QQmlApplicationEngine engine;
        engine.load(QUrl(QStringLiteral("qrc:///main.qml")));
    //engine.load(QUrl(QStringLiteral("qrc:///loadin.qml")));
    return app.exec();
}
想问一下大家是怎么实现的?
在线toby520

只看该作者 1楼 发表于: 2014-07-13
要看下qml里面写的什么 如果主qml的主窗口是个rectangle肯定运行不起来,因为你的main函数里面只是一个qml引擎,没有真正的view来加载qml,所以你的qml里面必须要是WIndow活着AppplicationWindow作为主窗口
1条评分金钱+1
lovexin109 金钱 +1 - 2014-07-13
QtQML多多指教开发社区 http://qtclub.heilqt.com
将QtCoding进行到底
关注移动互联网,关注金融
开发跨平台客户端,服务于金融行业
专业定制界面
群号:312125701   373955953(qml控件定做)
离线lovexin109

只看该作者 2楼 发表于: 2014-07-13
回 toby520 的帖子
toby520:要看下qml里面写的什么 如果主qml的主窗口是个rectangle肯定运行不起来,因为你的main函数里面只是一个qml引擎,没有真正的view来加载qml,所以你的qml里面必须要是WIndow活着AppplicationWindow作为主窗口 (2014-07-13 16:26) 

谢谢版主,试了一下仍无法显示,重新建了一个把里拷出来就可以了,我原来的主窗口是rectangle,确是需要window或applicationwindow。版主威武
顺便问一下版主像这种登陆界面切换主界面,是用engine.load 加载不同的QML文件就可以了吗?
QQmlApplicationEngine engine;
        engine.load(QUrl(QStringLiteral("qrc:///main.qml")));
    //engine.load(QUrl(QStringLiteral("qrc:///loadin.qml")))
在线toby520

只看该作者 3楼 发表于: 2014-07-13
一般都是在一个window窗口里面做页面的切换,或者动态加载qml页面,不建议在c++里面做页面切换,关于页面切换 可以参考下stackview这个qml控件
QtQML多多指教开发社区 http://qtclub.heilqt.com
将QtCoding进行到底
关注移动互联网,关注金融
开发跨平台客户端,服务于金融行业
专业定制界面
群号:312125701   373955953(qml控件定做)
离线lovexin109

只看该作者 4楼 发表于: 2014-07-14
回 toby520 的帖子
toby520:一般都是在一个window窗口里面做页面的切换,或者动态加载qml页面,不建议在c++里面做页面切换,关于页面切换 可以参考下stackview这个qml控件 (2014-07-13 21:48) 

谢谢版主,试一下
快速回复
限100 字节
 
上一个 下一个