[英]BB10 - Change QML Header Title from C++
我對C ++和QML還是很陌生,所以請嘗試自學一下! 我試圖更改QML標頭對象的“ title”屬性。 我目前正在根據GitHub上的pushCollector級聯示例開發我的應用程序。
我在其他地方讀過我可以分配屬性別名,並以此方式進行;
NavigationPane {
id: navPane
property alias connectionText:connectionStatus.title
Page {
Container {
Header {
id: connectionStatus
title: "Connection Status:"
verticalAlignment: VerticalAlignment.Bottom
bottomMargin: 0.0
topMargin: 0.0
visible: true
subtitle: ""
}
我的問題是,當我調用該函數時,如何制作一個可以動態更改標題的void函數。 我需要類似的東西;
void App:changeConnectionText(const QString new Text)
{
//change object title in QML
}
謝謝!
將此添加到.cpp
#include <bb/cascades/Header>
您可以這樣訪問:
void ApplicationUI::changeConnectionText(QString Text) {
Header* myheader = Application::instance()->scene()->findChild<Header*>("connectionStatus");
myheader->setTitle(Text);
}
您這樣稱呼它(在cpp中):
changeConnectionText("Yay, connected!");
和QML
Header {
id: connectionStatus
objectName: "connectionStatus" //add this!!!
title: "Connection Status:"
verticalAlignment: VerticalAlignment.Bottom
bottomMargin: 0.0
topMargin: 0.0
visible: true
subtitle: ""
}
經過測試,可以正常工作
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.