0
qml에 listview를 사용하여 축소 가능한 패널을 만들고로드를 동적으로 제어합니다.qml listview의 구성 요소가 삭제되었습니다.
property Component textBoxComponent;
property Component comboBoxComponent;
property Component twoStateBoxComponent;
property Component sliderComponent;
Component.onCompleted: {
textBoxComponent = Qt.createComponent("MyTextBox.qml")
comboBoxComponent = Qt.createComponent("MyCombobox.qml")
twoStateBoxComponent = Qt.createComponent("CheckBoxSwitcher.qml")
sliderComponent = Qt.createComponent("MySlider.qml")
}
이 구성 요소는 다음과 같이리스트 뷰 대리인에서 사용된다
componentContainer.sourceComponent = comboBoxComponent
componentContainer.item.comboItems = displayValues
componentContainer.item.parameterName = settingName
componentContainer.item.width = ScriptStyles.parameterControlWidth
이 코드는 함수 "Component.onCompleted"을 실행. 여기서 "componentContainer"는 "Loader"요소입니다. ListView를 숨길 때까지 모든 것이 잘 작동합니다 (높이와 불투명도를 0으로 변경합니다. 또한 0.05 값을 설정하려고 시도했습니다). 이와 같이 :
states: [
State {
name: "collapsed"
PropertyChanges {
target: listView
height: 0
opacity: 0
}
]
일부 컨트롤을 확장 한 후에는 축소 전과 같이 유지되고 일부는 다시 작성됩니다 (축소 중 축소 실행). 어떻게 대상물이 파괴되는 것을 막을 수 있습니까?
자신 만의 질문에 답해야합니다 (또는 삭제하십시오). – Mitch