2012-10-17 2 views
1

HP webOS 앱을 실행하기위한 환경에서 작업하고 있습니다. Mojo.Menu를 읽고 자바 스크립트 코드에서 가져온 데이터로 QML 메뉴를 채워야합니다. 예를 들어 QML 메뉴를 동적으로 채우기

  Mojo.Menu.prefsItem, 
      { 
       { label: $L("High Scores") 
      }, 

에서 I는 QML 오브젝트

MenuItem { 
    text: "High scores" 
    onClicked: //some stuff 
} 

에게 Q_INVOKABLE 함수에 의해 제공되는 것 인 목록 (또는 QStringList QList 하나)을 만드는 것이다.

동적으로 이러한 MenuItem을 만들고 MenuLayout으로 밀어 넣을 수 있습니까?

답변

3

당신은

Qt.createQmlObject() 

동적 객체를 만드는 데 사용할 수 있으며, 이후 당신은 당신의 목록에서 사람에게 자신의 속성을 변경할 수 있습니다. 동적 개체 생성에 대한 자세한 내용은 this article을 참조하십시오. 동적

var menuComponent = Qt.createComponent("MenuItem.qml"); 
if(menuComponent.status == Component.Ready) { 
    var createdMenu = menuComponent.createObject(customLayout); 
    createdMenu.text = "Text from your QList"; 
} 
의 MenuItem

을 만들어 추가 할 다음

MenuLayout { 
    id: customLayout 
} 

그리고 :

는 이러한 동적 먼저 레이아웃을 만들 레이아웃에 항목을 만들 추가하려면
관련 문제