2013-04-23 55 views
0

我正在开发BB10应用程序。加载另一个用户界面

我有一个包含登录按钮的QML文件。

当用户点击登录按钮时,应该加载另一个包含用户名和密码文本框以及两个按钮提交和取消的QML文件。

单击取消按钮用户应该返回到包含登录按钮的初始QML。

我怎么能做到这样使用C++

+0

不知道。我们目前还没有看到你尝试过的东西。 – 2013-04-23 11:44:38

回答

0

你可以写上点击登录按钮加载下一个QML文件中的函数的情况。

ApplicationUI::ApplicationUI(bb::cascades::Application *app) : 
    QObject(app) { 
QmlDocument *loginQml = QmlDocument::create("asset:///Login.qml").parent(
     this); 
loginQml->setContextProperty("myApp", this); 
rootLogin = loginQml->createRootObject<AbstractPane>(); 
rootLogin->setParent(this); 

QmlDocument *secondPage = QmlDocument::create("asset:///SecondPage.qml").parent(
     this); 
secondPage->setContextProperty("myApp", this); 
rootSecond = secondPage->createRootObject<AbstractPane>(); 
rootSecond->setParent(this); 

callFirstQml(); 
} 
void ApplicationUI::callFirstQml() { 
Application::instance()->setScene(0); 
Application::instance()->setScene(rootLogin); 
} 

void ApplicationUI::callSecondQml() { 
Application::instance()->setScene(0); 
Application::instance()->setScene(rootSecond); 
} 

猜猜这会适合你。确保在头文件中将函数名称写为QINVOKABLE。另外rootLogin和rootSecond也应该写在头文件中,因为这样,

private: 
bb::cascades::TabbedPane *rootLogin; 
bb::cascades::TabbedPane *rootSecond; 
相关问题