2013-08-31 2 views
1

저는 C++과 QML에 익숙하지가 않아서 스스로 가르치 려합니다. QML 헤더 객체의 "title"속성을 변경하려고합니다. 현재 GitHub의 pushCollector 캐스케이드 예제에서 내 앱을 개발 중입니다.BB10 - C++에서 QML 헤더 제목 변경

다른 방법으로 속성 별칭을 할당하고 그렇게 할 수 있습니다.

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 App:changeConnectionText(const QString new Text) 

    { 
     //change object title in QML 
    } 

고마워요!

void ApplicationUI::changeConnectionText(QString Text) { 

    Header* myheader = Application::instance()->scene()->findChild<Header*>("connectionStatus"); 
    myheader->setTitle(Text); 
} 

그리고 당신은 (cpp에있는)과 같이 호출 :

changeConnectionText("Yay, connected!"); 

과 QML

답변

2

#include <bb/cascades/Header> 

당신은 다음과 같이 액세스 .CPP이 추가

Header { 
    id: connectionStatus 
    objectName: "connectionStatus" //add this!!! 
    title: "Connection Status:" 
    verticalAlignment: VerticalAlignment.Bottom 
    bottomMargin: 0.0 
    topMargin: 0.0 
    visible: true 
    subtitle: "" 
} 

테스트를 거 쳤습니다.

+0

슈퍼! 고마워, 내가 원했던 방법! –