Popup QML Type
팝업과 같은 사용자 인터페이스 컨트롤의 기본 유형입니다. 더 보기...
Import Statement: | import QtQuick.Controls |
Inherits: | |
Inherited By: |
속성
- activeFocus : bool
- anchors.centerIn : Item
(since QtQuick.Controls 2.5 (Qt 5.12))
- availableHeight : real
- availableWidth : real
- background : Item
- bottomInset : real
(since QtQuick.Controls 2.5 (Qt 5.12))
- bottomMargin : real
- bottomPadding : real
- clip : bool
- closePolicy : enumeration
- contentChildren : list<Item>
- contentData : list<QtObject>
- contentHeight : real
- contentItem : Item
- contentWidth : real
- dim : bool
- enabled : bool
(since QtQuick.Controls 2.3 (Qt 5.10))
- enter : Transition
- exit : Transition
- focus : bool
- font : font
- height : real
- horizontalPadding : real
(since QtQuick.Controls 2.5 (Qt 5.12))
- implicitBackgroundHeight : real
(since QtQuick.Controls 2.5 (Qt 5.12))
- implicitBackgroundWidth : real
(since QtQuick.Controls 2.5 (Qt 5.12))
- implicitContentHeight : real
(since QtQuick.Controls 2.5 (Qt 5.12))
- implicitContentWidth : real
(since QtQuick.Controls 2.5 (Qt 5.12))
- implicitHeight : real
- implicitWidth : real
- leftInset : real
(since QtQuick.Controls 2.5 (Qt 5.12))
- leftMargin : real
- leftPadding : real
- locale : Locale
- margins : real
- mirrored : bool
(since QtQuick.Controls 2.3 (Qt 5.10))
- modal : bool
- opacity : real
- opened : bool
(since QtQuick.Controls 2.3 (Qt 5.10))
- padding : real
- palette : palette
(since QtQuick.Controls 2.3 (Qt 5.10))
- parent : Item
- popupType : enumeration
(since 6.8)
- rightInset : real
(since QtQuick.Controls 2.5 (Qt 5.12))
- rightMargin : real
- rightPadding : real
- scale : real
- spacing : real
(since QtQuick.Controls 2.1 (Qt 5.8))
- topInset : real
(since QtQuick.Controls 2.5 (Qt 5.12))
- topMargin : real
- topPadding : real
- transformOrigin : enumeration
- verticalPadding : real
(since QtQuick.Controls 2.5 (Qt 5.12))
- visible : bool
- width : real
- x : real
- y : real
- z : real
신호
- void aboutToHide()
- void aboutToShow()
- void closed()
- void opened()
방법
- void close()
- forceActiveFocus(enumeration reason)
- void open()
상세 설명
팝업은 팝업과 유사한 사용자 인터페이스 컨트롤의 기본 유형입니다. Window 또는 ApplicationWindow 과 함께 사용할 수 있습니다.
import QtQuick.Window import QtQuick.Controls ApplicationWindow { id: window width: 400 height: 400 visible: true Button { text: "Open" onClicked: popup.open() } Popup { id: popup x: 100 y: 100 width: 200 height: 300 modal: true focus: true closePolicy: Popup.CloseOnEscape | Popup.CloseOnPressOutsideParent } }
팝업은 자체 레이아웃을 제공하지 않으며, 예를 들어 RowLayout 또는 ColumnLayout 을 생성하여 콘텐츠 위치를 지정해야 합니다.
팝업의 자식으로 선언된 항목은 자동으로 팝업의 contentItem 에 부모가 됩니다. 동적으로 생성된 항목은 명시적으로 contentItem 으로 부모를 지정해야 합니다.
팝업 레이아웃
다음 다이어그램은 창 내 팝업의 레이아웃을 보여줍니다:
팝업의 implicitWidth 및 implicitHeight 은 일반적으로 배경 및 콘텐츠 항목의 암시적 크기와 모든 삽입 및 패딩을 기반으로 합니다. 이러한 속성은 명시적으로 width 또는 height 을 지정하지 않은 경우 팝업의 크기를 결정합니다.
contentItem 의 지오메트리는 패딩에 의해 결정됩니다. 다음 예제에서는 팝업 경계와 콘텐츠 사이에 10px 패딩을 예약합니다:
Popup { padding: 10 contentItem: Text { text: "Content" } }
background 항목은 인셋이나 명시적인 크기를 지정하지 않는 한 팝업의 전체 너비와 높이를 채웁니다.
음수 삽입을 사용하면 배경을 팝업보다 크게 만들 수 있습니다. 다음 예는 음수 삽입을 사용하여 팝업의 경계 밖에 그림자를 배치하는 예시입니다:
Popup { topInset: -2 leftInset: -2 rightInset: -6 bottomInset: -6 background: BorderImage { source: ":/images/shadowed-background.png" } }
팝업 유형
Qt 6.8부터 Menu 와 같은 일부 팝업은 플랫폼에 따라 세 가지 구현을 제공합니다. popupType 을 설정하여 원하는 것을 선택할 수 있습니다.
Popup.Item
은 모든 플랫폼에서 지원되지만 Popup.Window
및 Popup.Native
은 일반적으로 데스크톱 플랫폼에서만 지원됩니다. 또한 팝업이 native menubar 안에 있는 Menu 인 경우 메뉴도 기본 메뉴가 됩니다. 메뉴가 다른 메뉴 내의 하위 메뉴인 경우 상위(또는 루트) 메뉴에 따라 유형이 결정됩니다.
팝업을 항목으로 표시하기
popupType 을 Popup.Item
으로 설정하면 팝업이 별도의 창으로 표시되지 않고 부모와 동일한 장면 내의 항목으로 표시됩니다. 이 항목은 해당 장면의 overlay 에 부모가 되며 실제 창처럼 보이도록 스타일이 지정됩니다.
이 옵션은 다중 창을 지원하지 않는 플랫폼에서 특히 유용합니다. 이 옵션은 Qt 6.8 이전에도 유일한 옵션이었습니다.
장면의 다른 항목 위에 팝업을 표시하려면 ApplicationWindow 을 사용하는 것이 좋습니다. ApplicationWindow 은 배경 디밍 효과도 제공합니다.
팝업을 별도의 창으로 표시하기
popupType 을 Popup.Window
으로 설정하면 Qt::Popup 플래그가 구성된 최상위 수준 window 안에 팝업이 표시됩니다. 창을 사용하여 팝업을 표시하면 팝업이 상위 창 위에 떠서 지오메트리 외부에 배치할 수 있다는 장점이 있습니다. 그렇지 않으면 팝업은 Popup.Item
을 사용할 때와 동일하게 표시되며, 즉 Popup.Item
을 사용할 때와 동일한 QML 델리게이트 및 스타일을 사용합니다.
참고: 플랫폼이 Popup.Window
을 지원하지 않는 경우 Popup.Item
이 대체로 사용됩니다.
기본 팝업 표시
popupType 을 Popup.Native
으로 설정하면 플랫폼 기본 팝업 창을 사용하여 팝업이 표시됩니다. 이 창과 모든 콘텐츠는 QML이 아닌 플랫폼에서 렌더링됩니다. 즉, 팝업에 할당된 QML 델리게이트는 렌더링에 사용되지 않습니다. 예를 들어 Menu 에서 이 옵션을 사용하는 경우 플랫폼별 메뉴 API를 사용하여 구현됩니다. 이렇게 하면 일반적으로 팝업이 Popup.Window
보다 더 네이티브한 모양과 느낌을 주지만, 동시에 플랫폼의 제한과 모양 및 동작과 관련된 차이점이 발생합니다. 이러한 제한 사항은 영향을 받는 하위 클래스(예: Menu)에 자세히 설명되어 있습니다.
참고: 플랫폼이 Popup.Native
를 지원하지 않는 경우 Popup.Window
이 대체로 사용됩니다.
팝업 크기 조정
팝업 내에서 단일 항목만 사용되는 경우 포함된 항목의 암시적 크기에 맞게 크기가 조정됩니다. 따라서 레이아웃과 함께 사용하기에 특히 적합합니다.
Popup { ColumnLayout { anchors.fill: parent CheckBox { text: qsTr("E-mail") } CheckBox { text: qsTr("Calendar") } CheckBox { text: qsTr("Contacts") } } }
때로는 팝업 내에 두 개의 항목이 있을 수 있습니다:
Popup { SwipeView { // ... } PageIndicator { anchors.horizontalCenter: parent.horizontalCenter anchors.bottom: parent.bottom } }
이 경우 팝업은 합리적인 암시적 크기를 계산할 수 없습니다. SwipeView 에 PageIndicator 를 앵커링하고 있으므로 콘텐츠 크기를 뷰의 암시적 크기로 설정하기만 하면 됩니다:
Popup { contentWidth: view.implicitWidth contentHeight: view.implicitHeight SwipeView { id: view // ... } PageIndicator { anchors.horizontalCenter: parent.horizontalCenter anchors.bottom: parent.bottom } }
참고: popup items 을 사용하는 경우 팝업의 content item 은 overlay 에 부모가 되고 팝업의 부모 내에 위치하지 않습니다. 따라서 팝업이 있는 트리에 적용된 scale 은 시각적 팝업에 적용되지 않습니다. 예를 들어 ComboBox 팝업이 콤보박스의 배율을 따르도록 하려면 overlay 에도 동일한 배율을 적용하세요:
Window { property double scaleFactor: 2.0 Scale { id: scale xScale: scaleFactor yScale: scaleFactor } Item { id: scaledContent transform: scale ComboBox { id: combobox // ... } } Overlay.overlay.transform: scale }
팝업 위치 지정
Qt Quick 의 항목과 마찬가지로 팝업의 x 및 y 좌표는 상위 항목에 상대적입니다. 즉, 예를 들어 Button 의 자식인 팝업을 열면 팝업의 위치가 버튼에 상대적으로 배치됩니다.
다음 예제에서는 첨부된 Overlay.overlay 속성을 사용하여 팝업을 여는 버튼의 위치와 관계없이 창 중앙에 팝업을 배치합니다:
Button { onClicked: popup.open() Popup { id: popup parent: Overlay.overlay x: Math.round((parent.width - width) / 2) y: Math.round((parent.height - height) / 2) width: 100 height: 100 } }
상위 항목에 관계없이 창 중앙에 팝업을 배치하는 또 다른 방법은 anchors.centerIn 을 사용하는 것입니다:
ApplicationWindow { id: window // ... Pane { // ... Popup { anchors.centerIn: Overlay.overlay } } }
팝업이 둘러싸는 창의 범위 내에 위치하도록 하려면 margins 속성을 음수가 아닌 값으로 설정할 수 있습니다.
팝업 앞에 자식이 아닌 항목 표시하기
popup windows 을 사용하지 않는 경우 팝업은 contentItem 의 시각적 부모를 창의 overlay 로 설정하여 팝업이 장면의 다른 모든 항목 앞에 표시되도록 합니다. 경우에 따라 virtual keyboard 과 같은 항목을 팝업 앞에 배치하는 것이 유용할 수 있습니다. 이 경우 항목의 부모를 오버레이로 설정하고 항목에 양수 z 값을 지정하면 됩니다. 팝업이 열릴 때까지 기다렸다가 항목을 오버레이로 부모를 다시 지정해도 동일한 결과를 얻을 수 있습니다.
Popup { id: popup visible: true anchors.centerIn: parent margins: 10 closePolicy: Popup.CloseOnEscape ColumnLayout { TextField { placeholderText: qsTr("Username") } TextField { placeholderText: qsTr("Password") echoMode: TextInput.Password } } } InputPanel { parent: Overlay.overlay width: parent.width y: popup.y + popup.topMargin + (window.activeFocusItem?.y ?? 0) + (window.activeFocusItem?.height ?? 0) z: 1 }
팝업 전환
Qt 5.15.3부터 다음 프로퍼티는 종료 전환이 완료된 후 입력 전환 이전의 원래 값으로 복원됩니다.
따라서 명시적으로 정의된 값을 잃지 않고 내장 스타일이 이러한 프로퍼티에 애니메이션을 적용할 수 있습니다.
뒤로/이스케이프 이벤트 처리
기본적으로 다음과 같은 경우 팝업이 닫힙니다:
- activeFocus,
- closePolicy,
Popup.CloseOnEscape
, 그리고 - 사용자가 QKeySequence::Cancel 에 대한 키 시퀀스(일반적으로 이스케이프 키)를 누릅니다.
이런 일이 발생하지 않도록 하려면 다음과 같이 하세요:
- 팝업에 focus 을 제공하지 않습니다.
- 팝업의 closePolicy 을
Popup.CloseOnEscape
을 포함하지 않는 값으로 설정합니다. - 팝업의 하위 항목에서 Keys' escapePressed 신호를 처리하여 팝업보다 먼저 이벤트를 받도록 합니다.
속성 전파
팝업은 개체나 시각적 부모가 아닌 부모 창을 통해 글꼴, 팔레트 및 첨부된 속성을 상속합니다:
import QtQuick.Controls.Basic ApplicationWindow { width: 500 height: 500 visible: true font.pixelSize: 20 palette.windowText: "steelblue" // This will have a pixelSize of 20 and be "steelblue" in color. header: Label { text: "ApplicationWindow Label" leftPadding: 20 topPadding: 20 } Pane { width: 400 height: 400 anchors.centerIn: parent palette.window: "#edf3f8" palette.windowText: "tomato" // This will have a pixelSize of 20 and be "tomato" in color. Label { text: "Pane Label" } Popup { width: 300 height: 300 anchors.centerIn: parent font.pixelSize: 10 visible: true // This will have a pixelSize of 10 and "steelblue" in color. Label { text: "Popup Label" } Popup { width: 200 height: 200 anchors.centerIn: parent visible: true // This will have a pixelSize of 20 and be "steelblue" in color. Label { text: "Child Popup Label" } } } } }
또한 팝업은 프로퍼티를 하위 팝업으로 전파하지 않습니다. 이 동작은 Qt::Popup
위젯이 최상위 창인 Qt Widgets 을 모델로 합니다. 최상위 창은 해당 속성을 하위 창으로 전파하지 않습니다.
ComboBox 같은 특정 파생 유형은 일반적으로 팝업이 컨트롤의 필수적인 부분으로 간주되는 방식으로 구현되며, 따라서 첨부된 속성 같은 것을 상속할 수 있습니다. 예를 들어 머티리얼 스타일 ComboBox 에서 테마 및 기타 첨부 프로퍼티는 ComboBox 자체에서 팝업을 통해 명시적으로 상속됩니다:
popup: T.Popup { // ... Material.theme: control.Material.theme Material.accent: control.Material.accent Material.primary: control.Material.primary }
따라서 자식 팝업이 부모 팝업과 동일한 속성 값을 갖도록 하려면 해당 속성을 명시적으로 설정하세요:
닫힌 팝업의 폴란드어 동작
팝업이 닫히면 연결된 창이 없으며 하위 항목도 마찬가지입니다. 즉, 팝업이 표시될 때까지 모든 하위 항목은 polished 이 되지 않습니다. 따라서 예를 들어 닫힌 Popup
내에서 ListView 을 사용하여 count
속성을 업데이트할 수 없습니다:
import QtQuick import QtQuick.Controls ApplicationWindow { width: 640 height: 480 visible: true SomeModel { id: someModel } Button { text: view.count onClicked: popup.open() } Popup { id: popup width: 400 height: 400 contentItem: ListView { id: view model: someModel delegate: Label { text: display required property string display } } } }
위의 예에서 팝업이 닫힌 상태에서 component completion 이후 someModel
에 행을 추가하거나 제거하면 버튼의 텍스트가 업데이트되지 않습니다.
대신 rowsInserted, rowsRemoved, modelReset 신호가 전송될 때마다 업데이트되는 count
속성을 SomeModel
에 추가할 수 있습니다. 그러면 Button
에서 이 속성을 text
에 바인딩할 수 있습니다.
팝업 컨트롤, 팝업 사용자 정의 및 ApplicationWindow 를참조하세요 .
속성 문서
activeFocus : bool |
이 속성은 팝업에 활성 포커스가 있는지 여부를 보유합니다.
focus 및 Qt Quick 의 키보드 포커스도참조하세요 .
anchors.centerIn : Item |
앵커는 다른 항목과의 관계를 지정하여 항목의 위치를 지정하는 방법을 제공합니다.
일반적인 사용 사례는 부모 항목 내에서 팝업을 가운데에 배치하는 것입니다. 이를 위한 한 가지 방법은 x 및 y 속성을 사용하는 것입니다. 앵커는 보다 편리한 접근 방식을 제공합니다:
Overlay 을 사용하여 창에서 팝업을 가운데에 배치할 수도 있습니다:
ApplicationWindow { id: window // ... Pane { // ... Popup { anchors.centerIn: Overlay.overlay } } }
이렇게 하면 모든 컴포넌트에서 창 중앙에 팝업을 쉽게 배치할 수 있습니다.
참고: 팝업은 바로 위 부모 또는 창 오버레이 내에서만 중앙에 배치할 수 있으며, 다른 항목에서 중앙에 배치하려고 하면 경고가 표시됩니다.
이 속성은 QtQuick.Controls 2.5(Qt 5.12)에 도입되었습니다.
Popup Positioning, anchors, 및 Using Qt Quick Controls types in property declarations.
availableHeight : real |
이 속성은 팝업의 height 에서 수직 패딩을 뺀 후 contentItem 에 사용할 수 있는 높이를 유지합니다.
padding, topPadding, 및 bottomPadding 를참조하십시오 .
availableWidth : real |
이 속성은 팝업의 width 에서 가로 패딩을 뺀 후 contentItem 에 사용할 수 있는 너비를 보유합니다.
padding, leftPadding, 및 rightPadding 를참조하세요 .
background : Item |
이 속성은 배경 항목을 보유합니다.
참고: 배경 항목에 명시적인 크기가 지정되지 않은 경우 자동으로 팝업의 크기를 따릅니다. 대부분의 경우 배경 항목의 너비나 높이를 지정할 필요가 없습니다.
참고: 대부분의 팝업은 배경 항목의 암시적 크기를 사용하여 팝업 자체의 암시적 크기를 계산합니다. 배경 항목을 사용자 지정 항목으로 대체하는 경우 자체 암시적 크기가 있는 Image 같은 항목이 아니라면 적절한 암시적 크기를 제공하는 것도 고려해야 합니다.
팝업 사용자 지정하기를참조하세요 .
bottomInset : real |
이 속성은 배경의 하단 인셋을 유지합니다.
이 프로퍼티는 QtQuick.Controls 2.5 (Qt 5.12)에서 도입되었습니다.
Popup Layout 및 topInset 을참조하십시오 .
bottomMargin : real |
이 속성은 팝업의 하단 가장자리와 해당 창의 하단 가장자리 사이의 거리를 유지합니다.
아래쪽 여백이 음수인 팝업은 둘러싸는 창의 아래쪽 가장자리 안으로 밀리지 않습니다. 기본값은 -1
입니다.
margins, topMargin, Popup Layout 를참조하세요 .
bottomPadding : real |
이 속성은 하단 패딩을 유지합니다. 명시적으로 설정하지 않는 한 값은 verticalPadding
입니다.
패딩 속성은 content item 의 지오메트리를 제어하는 데 사용됩니다.
팝업은 Control 과 동일한 패딩 방식을 사용합니다. 패딩 시스템에 대한 시각적 설명은 문서의 Control Layout 섹션을 참조하세요.
padding, topPadding, verticalPadding, availableHeight도 참조하세요 .
clip : bool |
이 속성은 클리핑 활성화 여부를 보유합니다. 기본값은 false
입니다. 클리핑은 팝업이 자체 창에 있지 않을 때만 작동합니다.
closePolicy : enumeration |
이 속성은 팝업이 닫히는 상황을 결정합니다. 플래그를 조합하여 여러 가지 방법으로 팝업을 닫을 수 있습니다.
사용 가능한 값은 다음과 같습니다:
Constant | 설명 |
---|---|
Popup.NoAutoClose | 수동으로 닫으라는 지시가 있을 때만 팝업이 닫힙니다. |
Popup.CloseOnPressOutside | 마우스를 팝업 외부에서 누르면 팝업이 닫힙니다. |
Popup.CloseOnPressOutsideParent | 마우스가 상위 항목 외부로 이동하면 팝업이 닫힙니다. |
Popup.CloseOnReleaseOutside | 마우스를 팝업 외부에서 놓으면 팝업이 닫힙니다. |
Popup.CloseOnReleaseOutsideParent | 마우스를 부모 외부에서 놓으면 팝업이 닫힙니다. |
Popup.CloseOnEscape | 팝업에 활성 초점이 있는 상태에서 이스케이프 키를 누르면 팝업이 닫힙니다. |
CloseOnPress*
및 CloseOnRelease*
정책은 팝업 외부의 이벤트에만 적용됩니다. 즉, 두 개의 팝업이 열려 있고 첫 번째 팝업의 정책이 Popup.CloseOnPressOutside
인 경우 두 번째 팝업을 클릭하면 첫 번째 팝업이 닫히지 않습니다.
기본값은 Popup.CloseOnEscape | Popup.CloseOnPressOutside
입니다.
참고: Popup.CloseOnReleaseOutside
및 Popup.CloseOnReleaseOutsideParent
정책은 modal 팝업에서만 작동한다는 알려진 제한 사항이 있습니다.
이 속성은 콘텐츠 하위 목록을 보유합니다.
이 목록에는 QML에서 팝업의 하위 항목으로 선언된 모든 항목이 포함됩니다.
참고: contentData
와 달리 contentChildren
에는 시각적이지 않은 QML 객체가 포함되지 않습니다.
Item::children 및 contentData 을참조하세요 .
이 속성은 콘텐츠 데이터의 목록을 보유합니다.
이 목록에는 QML에서 팝업의 자식으로 선언된 모든 객체가 포함됩니다.
참고: contentChildren
와 달리 contentData
에는 비시각적 QML 객체가 포함됩니다.
Item::data 및 contentChildren 을참조하세요 .
contentHeight : real |
이 속성은 콘텐츠 높이를 보유합니다. 팝업의 총 암시적 높이를 계산하는 데 사용됩니다.
자세한 내용은 Popup Sizing 을 참조하세요.
contentWidth도 참조하십시오 .
contentItem : Item |
이 속성은 팝업의 콘텐츠 항목을 보유합니다.
콘텐츠 항목은 팝업의 시각적 구현입니다. 팝업이 표시되면 콘텐츠 항목은 자동으로 overlay item 로 부모가 변경됩니다.
참고: 콘텐츠 항목의 크기는 팝업의 padding 에 맞게 자동으로 조정됩니다.
참고: 대부분의 팝업은 콘텐츠 항목의 암시적 크기를 사용하여 팝업 자체의 암시적 크기를 계산합니다. 콘텐츠 항목을 사용자 지정 항목으로 대체하는 경우 자체 암시적 크기가 있는 Text 같은 항목이 아니라면 적절한 암시적 크기를 제공하는 것도 고려해야 합니다.
팝업 사용자 지정하기를참조하세요 .
contentWidth : real |
이 속성은 콘텐츠 너비를 보유합니다. 팝업의 총 암시적 너비를 계산하는 데 사용됩니다.
자세한 내용은 Popup Sizing 을 참조하세요.
contentHeight 를참조하세요 .
dim : bool |
이 속성은 팝업의 배경을 어둡게 할지 여부를 보유합니다.
명시적으로 설정하지 않는 한 이 속성은 modal 의 값을 따릅니다. 기본값으로 돌아가려면 이 속성을 undefined
으로 설정합니다.
modal 및 Overlay.modeless 을참조하세요 .
enabled : bool |
이 속성은 팝업 활성화 여부를 보유합니다. 기본값은 true
입니다.
이 프로퍼티는 QtQuick.Controls 2.3 (Qt 5.10)에 도입되었습니다.
visible 와 Item::enabled 를참조하십시오 .
enter : Transition |
이 속성은 팝업이 열리고 화면에 진입할 때 팝업 항목에 적용되는 전환을 유지합니다.
다음 예제는 팝업이 화면에 들어올 때 팝업의 불투명도를 애니메이션으로 처리합니다:
Popup { enter: Transition { NumberAnimation { property: "opacity"; from: 0.0; to: 1.0 } } }
exit 를참조하세요 .
exit : Transition |
이 속성은 팝업이 닫히고 화면에서 나갈 때 팝업 항목에 적용되는 전환을 유지합니다.
다음 예제는 화면에서 나갈 때 팝업의 불투명도를 애니메이션으로 처리합니다:
Popup { exit: Transition { NumberAnimation { property: "opacity"; from: 1.0; to: 0.0 } } }
enter 를참조하세요 .
focus : bool |
이 속성은 팝업이 포커스를 원하는지 여부를 보유합니다.
팝업이 실제로 포커스를 받으면 activeFocus 은 true
이 됩니다. 자세한 내용은 Qt Quick 에서 키보드 포커스를 참조하세요.
기본값은 false
입니다.
activeFocus 를참조하세요 .
font : font |
이 속성은 현재 팝업에 설정된 글꼴을 보유합니다.
팝업은 명시적 글꼴 속성을 자식에게 전파합니다. 팝업의 글꼴에서 특정 속성을 변경하면 해당 속성이 팝업의 모든 하위 항목으로 전파되어 해당 속성에 대한 시스템 기본값을 재정의합니다.
Popup { font.family: "Courier" Column { Label { text: qsTr("This will use Courier...") } Switch { text: qsTr("... and so will this") } } }
Control::font 및 ApplicationWindow::font 을참조하세요 .
height : real |
이 속성은 팝업의 높이를 보유합니다.
horizontalPadding : real |
이 속성은 가로 패딩을 보유합니다. 명시적으로 설정하지 않는 한 값은 padding
입니다.
패딩 속성은 content item 의 지오메트리를 제어하는 데 사용됩니다.
팝업은 Control 과 동일한 패딩 방식을 사용합니다. 패딩 시스템에 대한 시각적 설명은 설명서의 Control Layout 섹션을 참조하십시오.
이 프로퍼티는 QtQuick.Controls 2.5(Qt 5.12)에 도입되었습니다.
padding, leftPadding, rightPadding, verticalPadding 를참조하십시오 .
implicitBackgroundHeight : real |
이 속성은 암시적 배경 높이를 보유합니다.
값은 background ? background.implicitHeight : 0
입니다.
이 프로퍼티는 QtQuick.Controls 2.5 (Qt 5.12)에 도입되었습니다.
implicitBackgroundWidth 와 implicitContentHeight 를참조하십시오 .
implicitBackgroundWidth : real |
이 속성은 암시적 배경 너비를 보유합니다.
값은 background ? background.implicitWidth : 0
입니다.
이 프로퍼티는 QtQuick.Controls 2.5 (Qt 5.12)에 도입되었습니다.
implicitBackgroundHeight 와 implicitContentWidth 를참조하십시오 .
implicitContentHeight : real |
이 속성은 암시적 콘텐츠 높이를 보유합니다.
이 값은 콘텐츠 자식에 따라 계산됩니다.
이 프로퍼티는 QtQuick.Controls 2.5 (Qt 5.12)에 도입되었습니다.
implicitContentWidth 및 implicitBackgroundHeight 을참조하십시오 .
implicitContentWidth : real |
이 속성은 암시적 콘텐츠 너비를 보유합니다.
이 값은 컨텐츠 자식에 따라 계산됩니다.
이 프로퍼티는 QtQuick.Controls 2.5 (Qt 5.12)에 도입되었습니다.
implicitContentHeight 및 implicitBackgroundWidth 을참조하십시오 .
implicitHeight : real |
이 속성은 팝업의 암시적 높이를 보유합니다.
implicitWidth : real |
이 속성은 팝업의 암시적 너비를 보유합니다.
leftInset : real |
이 속성은 배경의 왼쪽 인셋을 보유합니다.
이 프로퍼티는 QtQuick.Controls 2.5(Qt 5.12)에 도입되었습니다.
Popup Layout 및 rightInset 을참조하십시오 .
leftMargin : real |
이 속성은 팝업의 왼쪽 가장자리와 창의 왼쪽 가장자리 사이의 거리를 유지합니다.
왼쪽 여백이 음수인 팝업은 둘러싸는 창의 왼쪽 가장자리 안으로 밀리지 않습니다. 기본값은 -1
입니다.
margins, rightMargin, Popup Layout 를참조하세요 .
leftPadding : real |
이 속성은 왼쪽 패딩을 보유합니다. 명시적으로 설정하지 않는 한 값은 horizontalPadding
입니다.
패딩 프로퍼티는 content item 의 지오메트리를 제어하는 데 사용됩니다.
팝업은 Control 과 동일한 패딩 방식을 사용합니다. 패딩 시스템에 대한 시각적 설명은 문서의 Control Layout 섹션을 참조하세요.
padding, rightPadding, horizontalPadding, availableWidth도 참조하세요 .
locale : Locale |
이 속성은 팝업의 로캘을 보유합니다.
mirrored 및 LayoutMirroring도 참조 하세요.
margins : real |
이 속성은 팝업의 가장자리와 창 가장자리 사이의 거리를 보유합니다.
여백이 음수인 팝업은 둘러싸는 창의 범위 내로 밀리지 않습니다. 기본값은 -1
입니다.
topMargin, leftMargin, rightMargin, bottomMargin, Popup Layout 를참조하세요 .
mirrored : bool |
이 속성은 팝업이 미러링되는지 여부를 보유합니다.
이 속성은 편의를 위해 제공됩니다. 팝업의 시각적 레이아웃 방향이 오른쪽에서 왼쪽, 즉 오른쪽에서 왼쪽 로캘을 사용하는 경우 팝업이 미러링된 것으로 간주됩니다.
이 속성은 QtQuick.Controls 2.3(Qt 5.10)에 도입되었습니다.
locale 및 오른쪽에서 왼쪽으로 사용자 인터페이스도참조하십시오 .
modal : bool |
이 속성은 팝업이 모달인지 여부를 보유합니다.
모달 팝업은 종종 Overlay.modal 에 정의된 독특한 배경 흐리기 효과를 가지며, 그 아래 항목에 대한 누르기 또는 놓기 이벤트를 허용하지 않습니다. 예를 들어 사용자가 실수로 팝업 외부를 클릭하면 클릭한 위치의 해당 팝업 아래에 있는 항목은 이벤트를 수신하지 않습니다.
데스크톱 플랫폼에서는 모달 팝업이 이스케이프 키를 누를 때만 닫히는 것이 일반적입니다. 이 동작을 구현하려면 closePolicy 을 Popup.CloseOnEscape
으로 설정합니다. 기본적으로 closePolicy
은 Popup.CloseOnEscape | Popup.CloseOnPressOutside
으로 설정되어 있으므로 모달 팝업 외부를 클릭하면 해당 팝업이 닫힙니다.
기본값은 false
입니다.
dim 를참조하세요 .
opacity : real |
이 속성은 팝업의 불투명도를 유지합니다. 불투명도는 0.0
(완전 투명)에서 1.0
(완전 불투명) 사이의 숫자로 지정됩니다. 기본값은 1.0
입니다.
visible 를참조하세요 .
opened : bool |
padding : real |
이 속성은 기본 패딩을 보유합니다.
패딩 프로퍼티는 content item 의 지오메트리를 제어하는 데 사용됩니다.
팝업은 Control 과 동일한 패딩 방식을 사용합니다. 패딩 시스템에 대한 시각적 설명은 문서의 Control Layout 섹션을 참조하세요.
availableWidth, availableHeight, topPadding, leftPadding, rightPadding, bottomPadding도 참조하세요 .
palette : palette |
이 속성은 현재 팝업에 설정된 팔레트를 보유합니다.
팝업은 명시적 팔레트 속성을 자식에게 전파합니다. 팝업의 팔레트에서 특정 속성을 변경하면 해당 속성이 팝업의 모든 하위 항목에 전파되어 해당 속성에 대한 시스템 기본값을 재정의합니다.
Popup { palette.text: "red" Column { Label { text: qsTr("This will use red color...") } Switch { text: qsTr("... and so will this") } } }
또한 참조하세요: Item::palette, Window::palette, ColorGroup 을 참조하십시오, Palette
이 프로퍼티는 QtQuick.Controls 2.3(Qt 5.10)에 도입되었습니다.
parent : Item |
이 속성은 부모 항목을 보유합니다.
popupType : enumeration |
이 속성은 기본 설정되는 팝업 유형을 결정합니다.
사용 가능한 옵션은 다음과 같습니다:
Constant | 설명 |
---|---|
Item | 별도의 창을 사용하지 않고 same scene as the parent 에 팝업이 임베드됩니다. |
Window | 플랫폼이 다중 창을 지원하지 않는 경우 separate window 에 팝업이 표시되며 대신 Popup.Item 이 사용됩니다. |
Native | 팝업은 플랫폼에 기본으로 표시됩니다. 플랫폼이 기본 팝업을 지원하지 않는 경우에는 Popup.Window 이 대신 사용됩니다. |
팝업이 선호하는 유형을 사용할 수 있는지 여부는 플랫폼에 따라 다릅니다. Popup.Item
는 모든 플랫폼에서 지원되지만 Popup.Window
및 Popup.Native
는 일반적으로 데스크톱 플랫폼에서만 지원됩니다. 또한 팝업이 native menubar 안에 있는 Menu 인 경우 메뉴도 기본 메뉴가 됩니다. 메뉴가 다른 메뉴 내부의 하위 메뉴인 경우 상위(또는 루트) 메뉴에 따라 유형이 결정됩니다.
기본값은 위에서 언급한 몇 가지 예외를 제외하고 일반적으로 Popup.Item
입니다. 다른 팝업 유형을 사용하는 것이 유리한 특정 스타일과 플랫폼의 경우 향후 Qt 버전에서 변경될 수 있습니다. 예를 들어 macOS의 모든 스타일에 항상 기본 메뉴를 사용하려는 경우 그렇게 할 수 있습니다:
Menu { popupType: Qt.platform.os === "osx" ? Popup.Native : Popup.Window }
또한 팝업을 사용자 지정하려는 경우(예: 델리게이트 변경 등) 팝업 유형을 Popup.Window
로 설정하는 것도 고려해야 합니다. 이렇게 하면 모든 플랫폼과 모든 스타일에서 변경 사항이 표시되도록 할 수 있습니다. 그렇지 않으면 네이티브 메뉴를 사용할 때 델리게이트가 렌더링에 사용되지 않습니다.
이 프로퍼티는 Qt 6.8에 도입되었습니다.
Popup type 를참조하십시오 .
rightInset : real |
이 속성은 배경에 대한 올바른 인셋을 유지합니다.
이 프로퍼티는 QtQuick.Controls 2.5(Qt 5.12)에 도입되었습니다.
Popup Layout 와 leftInset 를참조하십시오 .
rightMargin : real |
이 속성은 팝업의 오른쪽 가장자리와 창의 오른쪽 가장자리 사이의 거리를 유지합니다.
오른쪽 여백이 음수인 팝업은 둘러싸는 창의 오른쪽 가장자리 안으로 밀리지 않습니다. 기본값은 -1
입니다.
margins, leftMargin, Popup Layout 를참조하세요 .
rightPadding : real |
이 속성은 오른쪽 여백을 유지합니다. 명시적으로 설정하지 않는 한 값은 horizontalPadding
입니다.
패딩 속성은 content item 의 지오메트리를 제어하는 데 사용됩니다.
팝업은 Control 과 동일한 패딩 방식을 사용합니다. 패딩 시스템에 대한 시각적 설명은 문서의 Control Layout 섹션을 참조하세요.
padding, leftPadding, horizontalPadding, availableWidth도 참조하세요 .
scale : real |
이 속성은 팝업의 배율을 보유합니다. 기본값은 1.0
입니다.
배율이 1.0
보다 작으면 팝업이 더 작은 크기로 렌더링되고, 1.0
보다 크면 팝업이 더 큰 크기로 렌더링됩니다. 음수 배율은 지원되지 않습니다.
spacing : real |
이 속성은 간격을 유지합니다.
간격은 여러 개 또는 반복적인 빌딩 블록이 있는 팝업에 유용합니다. 예를 들어 일부 스타일은 간격을 사용하여 Dialog 의 머리글, 콘텐츠 및 바닥글 사이의 거리를 결정합니다. 간격은 팝업에서 강제 적용되지 않으므로 스타일마다 다르게 해석할 수 있으며 일부는 완전히 무시할 수도 있습니다.
이 프로퍼티는 QtQuick.Controls 2.1(Qt 5.8)에 도입되었습니다.
topInset : real |
이 속성은 배경의 상단 인셋을 유지합니다.
이 프로퍼티는 QtQuick.Controls 2.5 (Qt 5.12)에 도입되었습니다.
Popup Layout 와 bottomInset 를참조하십시오 .
topMargin : real |
이 속성은 팝업의 상단 가장자리와 해당 창의 상단 가장자리 사이의 거리를 유지합니다.
상단 여백이 음수인 팝업은 둘러싸는 창의 상단 가장자리 안으로 밀리지 않습니다. 기본값은 -1
입니다.
margins, bottomMargin, Popup Layout 를참조하세요 .
topPadding : real |
이 속성은 상단 패딩을 유지합니다. 명시적으로 설정하지 않는 한 값은 verticalPadding
입니다.
패딩 속성은 content item 의 지오메트리를 제어하는 데 사용됩니다.
팝업은 Control 과 동일한 패딩 방식을 사용합니다. 패딩 시스템에 대한 시각적 설명은 문서의 Control Layout 섹션을 참조하세요.
padding, bottomPadding, verticalPadding, availableHeight도 참조하세요 .
transformOrigin : enumeration |
이 속성은 진입 및 종료 전환에서 변환의 원점을 보유합니다.
아래 이미지에 표시된 것처럼 9개의 변환 원점을 사용할 수 있습니다. 기본 트랜스폼 원점은 Popup.Center
입니다.
enter, exit, Item::transformOrigin 를참조하세요 .
verticalPadding : real |
이 속성은 수직 패딩을 보유합니다. 명시적으로 설정하지 않는 한 값은 padding
입니다.
패딩 속성은 content item 의 지오메트리를 제어하는 데 사용됩니다.
팝업은 Control 과 동일한 패딩 방식을 사용합니다. 패딩 시스템에 대한 시각적 설명은 설명서의 Control Layout 섹션을 참조하십시오.
이 프로퍼티는 QtQuick.Controls 2.5(Qt 5.12)에 도입되었습니다.
padding, topPadding, bottomPadding, horizontalPadding 를참조하십시오 .
width : real |
이 속성은 팝업의 너비를 보유합니다.
z : real |
신호 문서
void aboutToHide() |
void aboutToShow() |
void closed() |
void opened() |
메서드 문서
void close() |
팝업을 닫습니다.
visible도 참조하세요 .
forceActiveFocus(enumeration reason = Qt.OtherFocusReason) |
지정된 reason 으로 팝업에 활성 포커스를 강제 설정합니다.
이 메서드는 팝업에 포커스를 설정하고 객체 계층 구조의 모든 상위 FocusScope 객체에도 focus 이 지정되도록 합니다.
activeFocus 및 Qt::FocusReason 을참조하십시오 .
void open() |
팝업을 엽니다.
visible도 참조하십시오 .
© 2025 The Qt Company Ltd. 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.