기본 상태 생성
코드를 깔끔하게 유지하려면, 애플리케이션에서 필요한 모든 컴포넌트를 포함하는 기본 상태를 생성하세요. 그런 다음, 일련의 컴포넌트를 숨기거나 표시하고 해당 속성을 수정하는 상태를 생성할 수 있습니다. 이를 통해 다음을 수행할 수 있습니다:
- 서로 다른 뷰에 있는 컴포넌트 간의 정렬을 맞출 수 있습니다.
- 과도한 속성 변경을 피할 수 있습니다. 컴포넌트가 기본 상태에서 보이지 않는 경우, 해당 컴포넌트의 자식 컴포넌트에 대한 모든 변경 사항을 속성 변경으로 정의해야 하므로 코드가 복잡해질 수 있습니다.
- 기본 상태와 다른 상태 간의 차이를 최소화하여 코드를 간결하고 가독성 있게 유지하며 성능을 향상시킬 수 있습니다.
- 상태 전환 시 전환 효과 및 애니메이션을 사용할 때 발생하는 문제를 방지할 수 있습니다.
상태를 사용하여 애플리케이션 뷰 생성하기
상태를 사용하여 애플리케이션 뷰를 생성하려면:
- View > Views > States 로 이동합니다.
- 기본 상태에서 애플리케이션에 필요한 모든 컴포넌트를 추가합니다(1). 한 뷰를 작업하는 동안 ‘ Navigator ’에서 ‘
’을 선택하여 뷰에 속하지 않는 캔버스상의 컴포넌트를 숨길 수 있습니다. - States 에서 + 아이콘을 선택하여 새 상태를 생성하고 이름을 지정합니다. 예를 들어,
Normal. - Properties (2)에서, 이 뷰에 필요하지 않은 각 컴포넌트에 대해 ‘ Visibility ’을 비활성화하거나 ‘ Opacity ’을 0으로 설정합니다. 상위 컴포넌트에 대한 설정을 지정하면 모든 하위 컴포넌트가 이를 상속받아 마찬가지로 숨겨집니다.
- 각 뷰에 대해 추가 상태를 생성하고, 해당 뷰 내 구성 요소의 표시 여부 또는 불투명도를 설정하십시오.
- 애플리케이션 시작 시 적용될 상태를 지정하려면 ‘ Default ’를 선택하십시오.

상태 그룹
상태 그룹을 사용하면 동일한 뷰 내의 다른 컴포넌트 및 해당 상태와 독립적으로 특정 컴포넌트의 상태를 변경할 수 있습니다.
각 상태 그룹에는 고유한 속성 변경 사항과 전환 효과가 있습니다.
기본적으로 하나의 기본 상태 그룹이 있습니다.
상태 확장
한 상태가 다른 상태를 확장하면, 해당 상태의 모든 변경 사항을 상속받습니다. 확장되는 상태는 확장하는 상태에서 지정한 변경 사항과 관련하여 기본 상태로 취급됩니다.
확장된 상태를 사용하면 사용자 인터페이스와 QML 코드를 더 깔끔하게 만들 수 있습니다.
다음 예제에서 State1 와 State2 의 유일한 차이점은 directionalLight 의 밝기입니다.
여기서는 확장된 상태가 사용되지 않습니다:

여기서는 State2 가 State1 를 확장한 형태입니다:

‘상태 사용 방법’, ‘Qt Quick UI 디자인’ 및 ‘ Qt Quick UI 디자인’문서도 참조하십시오 .
Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.