2017-05-17 8 views
1

Qml 파일을 가져 와서 다른 qml에서 A라고 말하면 B라고 말합니다. A에서 일부 변경을 수행 할 때마다 응용 프로그램에 반영되지 않습니다. 나는 내가 만든 변경 사항을보기 위해 다시 청소하고 다시 만들어야하는데, 이는 시간이 많이 걸린다. 이 작업을보다 쉽고 효율적으로 수행 할 수 있으므로 시간을 절약 할 수 있습니다.가져온 QML 파일 변경 내용을 보려면 다시 반복해서 다시 작성하십시오.

또는 이런 말을하는 또 다른 방법은 다음과 같습니다
QRC 파일 debug_and_release 모드에서 메이크 파일 종속성으로

예를

A.qml

Rectangle { 
     id:xyz 
    Button 
    { 
    id: ButtonA 
    } 
} 

B.qml

을 추가되지 않습니다
Rectangle{ 
      A { 
       id:abc 
      } 
     } 

qt 4를 사용하고 있습니다. qtquick 1.0.

+2

https://bugreports.qt.io/browse/QTBUG-13334와 그 많은 복제본을 참조하십시오. qrc 파일을 사용하는 경우이 문제가 발생할 수 있습니다. 그것은 매우 성가신 일입니다. – Mitch

답변

0

새로운 qt 작성자를 설치하면 문제가 해결됩니다. 나를 위해 일했다. QT 제작자 4.8.7을 설치했습니다.

1

두 개의 독립적 인 qrc 파일을 만들 수 있습니다. 하나는 디버그 용이고 하나는 사운드, 이미지, 글꼴 및 ... qml 파일을 포함하는 릴리스 용 qrc 파일뿐입니다. 그러면 시간이 많이 소요되는 컴파일과 링키지가 필요한 qrc에 qml 파일을 포함 할 필요없이 현재 작업 디렉토리 (빌드 & 실행 창에서 설정할 수 있음)와 상대적으로 qml 파일을 가리킬 수 있습니다. 루트 qml 파일은 C++ 측에서 상대 경로 (또는 절대 경로)로 지정해야하며 다른 qml 파일에는 다른 변경이 필요하지 않으며 릴리스 및 디버그 모드에서 완벽하게 작동합니다.

파일 :

debug { 
    RESOURCES  = application_debug.qrc 
} 

!debug { 
    RESOURCES  = application_release.qrc 
}