2011-06-14 9 views

답변

1

목록 뷰와 텍스트 요소를 서로 위에 겹쳐서 표시합니다. 적어도 QtQuick2에이 같은 것을 할 수

ListView{ 
    visible : if(model.count > 0) true;else false; 
} 
Text{ 
    visible : if(model.count > 0) false;else true; 
} 
+1

안녕하세요,이 오류가 발생합니다 : QDeclarativeExpression : 표현 "볼 (기능 $() {return listView.model.count> 0? false : true}) "NO-NOTIFYable 속성에 의존합니다 : QDeclarativeFolderListModel :: count, 그리고 작동하지 않습니다 – catinred

+2

그럼 당신은 그 카운트에 대한 NOTIFY 신호를 갖도록 QDeclarativeFolderListModel을 고칠 수 있습니다 속성을 사용하거나 NOTIFYable 인 listView.count를 사용해보십시오. –

0

참 또는 거짓이 model.count에 따라로 설정하여 공개 :

import QtQuick 2.9 
import QtQuick.Controls 2.2 

ListView { 
    model: ... 
    clip: true 

    Label { 
     anchors.fill: parent 
     horizontalAlignment: Qt.AlignHCenter 
     verticalAlignment: Qt.AlignVCenter 
     visible: parent.count == 0 
     text: qsTr("Nothing to show yet!") 
     font.bold: true 
    } 
} 
관련 문제