ComboBox QML Type
옵션을 선택하기 위한 버튼과 팝업 목록이 결합된 형태입니다. 더 보기...
| Import Statement: | import QtQuick.Controls |
| Inherits: |
속성
- acceptableInput : bool
(since QtQuick.Controls 2.2 (Qt 5.9)) - count : int
- currentIndex : int
- currentText : string
- currentValue : var
(since QtQuick.Controls 2.14 (Qt 5.14)) - delegate : Component
- delegateModel : model
- displayText : string
- down : bool
(since QtQuick.Controls 2.2 (Qt 5.9)) - editText : string
(since QtQuick.Controls 2.2 (Qt 5.9)) - editable : bool
(since QtQuick.Controls 2.2 (Qt 5.9)) - flat : bool
(since QtQuick.Controls 2.1 (Qt 5.8)) - highlightOnHover : bool
(since QtQuick.Controls 6.12 (Qt 6.12)) - highlightedIndex : int
- implicitContentWidthPolicy : enumeration
(since QtQuick.Controls 6.0 (Qt 6.0)) - implicitIndicatorHeight : real
(since QtQuick.Controls 2.5 (Qt 5.12)) - implicitIndicatorWidth : real
(since QtQuick.Controls 2.5 (Qt 5.12)) - indicator : Item
- inputMethodComposing : bool
(since QtQuick.Controls 2.2 (Qt 5.9)) - inputMethodHints : flags
(since QtQuick.Controls 2.2 (Qt 5.9)) - model : model
- popup : Popup
- pressed : bool
- selectTextByMouse : bool
(since QtQuick.Controls 2.15 (Qt 5.15)) - textRole : string
- validator : Validator
(since QtQuick.Controls 2.2 (Qt 5.9)) - valueRole : string
(since QtQuick.Controls 2.14 (Qt 5.14))
신호
- void accepted()
(since QtQuick.Controls 2.2 (Qt 5.9)) - void activated(int index)
- void highlighted(int index)
방법
- void decrementCurrentIndex()
- int find(string text, enumeration flags)
- void incrementCurrentIndex()
- int indexOfValue(object value)
(since QtQuick.Controls 2.14 (Qt 5.14)) - void selectAll()
(since QtQuick.Controls 2.2 (Qt 5.9)) - string textAt(int index)
- var valueAt(int index)
(since QtQuick.Controls 2.14 (Qt 5.14))
상세 설명
콤보박스(ComboBox)는 버튼과 팝업 목록이 결합된 요소입니다. 이 요소는 화면 공간을 최소한으로 차지하면서 사용자에게 옵션 목록을 표시할 수 있는 방법을 제공합니다.
콤보박스(ComboBox)는 데이터 모델로 채워집니다. 데이터 모델은 일반적으로 JavaScript 배열, 객체( ListModel ) 또는 정수이지만, 다른 유형의 데이터 모델 도 지원됩니다.
ComboBox {
model: ["First", "Second", "Third"]
}편집 가능한 콤보박스
콤보박스는 편집 가능( editable)하게 설정할 수 있습니다. 편집 가능한 콤보박스는 모델에 포함된 내용을 기반으로 텍스트를 자동 완성합니다.
다음 예제는 ` accepted ` 신호에 반응하여 편집 가능한 콤보 박스에 내용을 추가하는 방법을 보여줍니다.
ComboBox {
editable: true
model: ListModel {
id: model
ListElement { text: "Banana" }
ListElement { text: "Apple" }
ListElement { text: "Coconut" }
}
onAccepted: {
if (find(editText) === -1)
model.append({text: editText})
}
}ComboBox의 팝업
기본적으로 콤보박스 팝업 외부 영역을 클릭하면 팝업이 닫히며, 이 이벤트는 스태킹 순서상 아래에 있는 항목들로 전파됩니다. 팝업이 닫히는 것을 방지하려면 closePolicy 속성을 설정하십시오:
popup.closePolicy: Popup.CloseOnEscape이벤트 전파를 방지하려면 modal 속성을 true 로 설정하십시오:
popup.modal: trueComboBox 모델 역할
ComboBox는 ‘ modelData ’ 역할을 제공하는 표준 데이터 모델을 시각화할 수 있습니다:
- 단 하나의 역할만 가진 모델
- 이름이 지정된 역할이 없는 모델(JavaScript 배열, 정수)
이름이 지정된 여러 역할을 가진 모델을 사용할 경우, ComboBox는 display text 및 delegate 인스턴스에 대해 특정 text role 을 사용하도록 구성되어야 합니다. 모델 항목의 'text' 역할에 해당하는 역할을 사용하려면 valueRole 를 설정하십시오. 그러면 currentValue 속성과 indexOfValue() 메서드를 사용하여 해당 값에 대한 정보를 얻을 수 있습니다.
예를 들어:
ApplicationWindow {
width: 640
height: 480
visible: true
// Used as an example of a backend - this would usually be
// e.g. a C++ type exposed to QML.
QtObject {
id: backend
property int modifier
}
ComboBox {
model: [
{ value: Qt.NoModifier, text: qsTr("No modifier") },
{ value: Qt.ShiftModifier, text: qsTr("Shift") },
{ value: Qt.ControlModifier, text: qsTr("Control") }
]
textRole: "text"
valueRole: "value"
// Set currentValue to the value stored in the backend.
currentValue: backend.modifier
// When an item is selected, update the backend.
onActivated: backend.modifier = currentValue
}
}참고: ComboBox에 여러 개의 명명된 역할이 있는 데이터 모델이 할당되었지만 textRole 가 정의되지 않은경우 , ComboBox는 이를 시각화할 수 없으며 ReferenceError: modelData is not defined 예외를 발생시킵니다.
Qt Quick Controls 의ComboBox, 입력 컨트롤 및 포커스 관리사용자 지정항목도 참조하십시오 .
속성 설명서
acceptableInput : bool [read-only, since QtQuick.Controls 2.2 (Qt 5.9)]
이 속성은 콤보 박스에 편집 가능한 텍스트 필드에 허용되는 텍스트가 포함되어 있는지 여부를 나타냅니다.
유효성 검사기가 설정된 경우, 현재 텍스트가 유효성 검사기에서 최종 문자열(중간 문자열이 아닌)로 허용될 때만 이 값은 ` true `이 됩니다.
이 속성은 QtQuick.Controls 2.2(Qt 5.9)에서 도입되었습니다.
validator 및 accepted도 참조하십시오 .
count : int [read-only]
이 속성은 콤보 박스에 포함된 항목의 개수를 저장합니다.
currentIndex : int
이 속성은 콤보 박스 내 현재 항목의 인덱스를 저장합니다.
count 가 0 인 경우 기본값은 -1 이며, 그 외의 경우에는 0 입니다.
activated(), currentText 및 highlightedIndex도 참조하십시오 .
currentText : string [read-only]
이 속성은 콤보 박스의 현재 항목에 해당하는 텍스트를 저장합니다.
currentIndex, displayText, textRole 및 editText도 참조하십시오 .
currentValue : var [since QtQuick.Controls 2.14 (Qt 5.14)]
이 속성은 콤보 박스의 현재 항목 값을 저장합니다. 이 속성을 설정하면 currentIndex 에 해당 값을 가진 항목이 설정되며, 해당 항목이 없으면 -1 가 설정됩니다. currentIndex 와 currentValue 를 모두 선언적으로 설정하면 정의되지 않은 동작이 발생합니다. 고유하지 않은 값으로 이 속성을 설정하는 것은 지원되지 않습니다.
이 속성의 사용 예제는 ComboBox Model Roles 을 참조하십시오.
이 속성은 QtQuick.Controls 2.14(Qt 5.14)에서 도입되었습니다.
currentIndex, currentText 및 valueRole도 참조하십시오 .
delegate : Component
이 속성은 콤보 박스 팝업에 항목을 표시하는 델리게이트를 포함합니다.
ItemDelegate (또는 기타 AbstractButton 파생 클래스)를 델리게이트로 사용하는 것이 권장됩니다. 이렇게 하면 상호작용이 예상대로 작동하며, 적절한 시점에 팝업이 자동으로 닫힙니다. 다른 유형을 델리게이트로 사용할 경우 팝업을 수동으로 닫아야 합니다. 예를 들어, MouseArea 를 사용하는 경우:
delegate: Rectangle {
// ...
MouseArea {
// ...
onClicked: comboBox.popup.close()
}
}Qt 6.11부터 ComboBox 는 델리게이트에 대한 소유권을 가져가지 않습니다.
ItemDelegate 및 ComboBox 사용자 정의항목도 참조하십시오 .
delegateModel : model [read-only]
이 속성은 콤보 박스에 대한 델리게이트 인스턴스를 제공하는 모델을 포함합니다.
일반적으로 이 속성은 popup 의 contentItem 에서 ListView 에 할당됩니다.
'ComboBox 사용자 지정' 항목도 참조하십시오 .
displayText : string
이 속성은 콤보 박스 버튼에 표시되는 텍스트를 저장합니다.
기본적으로 표시 텍스트는 현재 선택 항목을 나타냅니다. 즉, 현재 항목의 텍스트를 따릅니다. 그러나 기본 표시 텍스트는 사용자 정의 값으로 재정의할 수 있습니다.
ComboBox {
currentIndex: 1
displayText: "Size: " + currentText
model: ["S", "M", "L"]
}currentText 및 textRole도 참조하십시오 .
down : bool [since QtQuick.Controls 2.2 (Qt 5.9)]
이 속성은 콤보 박스 버튼이 시각적으로 눌린 상태인지 여부를 나타냅니다.
명시적으로 설정하지 않는 한, ` pressed ` 또는 ` popup.visible ` 중 하나가 ` true`인 경우 이 속성은 ` true `입니다. 기본값으로 되돌리려면 이 속성을 ` undefined`으로 설정하십시오.
이 속성은 QtQuick.Controls 2.2(Qt 5.9)에서 도입되었습니다.
editText : string [since QtQuick.Controls 2.2 (Qt 5.9)]
이 속성은 편집 가능한 콤보 박스의 텍스트 필드에 들어 있는 텍스트를 저장합니다.
이 속성은 QtQuick.Controls 2.2(Qt 5.9)에서 도입되었습니다.
editable, currentText 및 displayText도 참조하십시오 .
editable : bool [since QtQuick.Controls 2.2 (Qt 5.9)]
이 속성은 콤보 박스가 편집 가능한지 여부를 나타냅니다.
기본값은 false 입니다.
이 속성은 QtQuick.Controls 2.2(Qt 5.9)에서 도입되었습니다.
validator도 참조하십시오 .
flat : bool [since QtQuick.Controls 2.1 (Qt 5.8)]
이 속성은 콤보 박스 버튼이 플랫 스타일인지 여부를 나타냅니다.
플랫 콤보 박스 버튼은 상호작용이 발생하지 않는 한 배경을 표시하지 않습니다. 일반 콤보 박스와 비교할 때, 플랫 콤보 박스는 UI의 다른 요소들 사이에서 덜 눈에 띄는 외관을 제공합니다. 예를 들어, 콤보 상자를 도구 모음에 배치할 때, 도구 버튼의 평면적인 디자인과 더 잘 어울리도록 콤보 상자를 평면 형태로 만드는 것이 바람직할 수 있습니다.
기본값은 false 입니다.
이 속성은 QtQuick.Controls 2.1(Qt 5.8)에서 도입되었습니다.
highlightOnHover : bool [since QtQuick.Controls 6.12 (Qt 6.12)]
이 속성은 항목 위에 마우스를 올렸을 때 해당 항목을 강조 표시할지 여부를 결정합니다.
기본값은 ` true`입니다.
이 속성은 QtQuick.Controls 6.12(Qt 6.12)에서 도입되었습니다.
highlightedIndex : int [read-only]
이 속성은 콤보 박스 팝업 목록에서 강조 표시된 항목의 인덱스를 저장합니다.
강조 표시된 항목이 활성화되면 팝업이 닫히고, ` currentIndex `는 ` highlightedIndex`로 설정되며, 더 이상 강조 표시된 항목이 없으므로 이 속성의 값은 ` -1`로 재설정됩니다.
highlighted() 및 currentIndex도 참조하십시오 .
implicitContentWidthPolicy : enumeration [since QtQuick.Controls 6.0 (Qt 6.0)]
이 속성은 ‘ ComboBox ’의 ‘ implicitContentWidth ’가 어떻게 계산되는지를 제어합니다.
ComboBox 의 너비가 텍스트를 표시하기에 충분하지 않을 경우, 해당 텍스트는 생략됩니다. 텍스트의 어느 부분이 생략되느냐에 따라 최종 사용자가 항목을 선택하기 어려워질 수 있습니다. 텍스트가 생략되지 않도록 ComboBox 의 너비를 충분히 확보하는 효율적인 방법은, 충분히 넓다고 알려진 너비를 설정하는 것입니다:
width: 300
implicitContentWidthPolicy: ComboBox.ContentItemImplicitWidth그러나 텍스트의 크기는 글꼴 패밀리, 글꼴 크기, 번역 등 여러 요인에 따라 달라지기 때문에, 하드코딩된 값이 충분히 클지 여부를 미리 알기 어려운 경우가 많습니다.
`implicitContentWidthPolicy`는 `implicitContentWidth`가 계산되는 방식을 제어하는 간편한 방법을 제공하며, 이는 결과적으로 ` ComboBox `의 ` implicitWidth `에 영향을 주어 텍스트가 생략되지 않도록 보장합니다.
사용 가능한 값은 다음과 같습니다.
| Constant | 설명 |
|---|---|
ContentItemImplicitWidth | implicitContentWidth는 기본적으로 contentItem 의 너비로 설정됩니다. 추가적인 텍스트 레이아웃 작업이 필요하지 않으므로 가장 효율적인 옵션입니다. |
WidestText | implicitContentWidth는 모델이 변경될 때마다 지정된 textRole 에 포함된 가장 큰 텍스트의 암시적 너비로 설정됩니다. 이 옵션은 처리 비용이 높을 수 있으므로, 규모가 작은 모델에 사용해야 합니다. |
WidestTextWhenCompleted | implicitContentWidth는 ` component completion` 호출 후 한 번, 주어진 ` textRole `에 포함된 가장 큰 텍스트의 암시적 너비로 설정됩니다. 이 옵션은 처리 비용이 많이 들 수 있으므로 작은 모델에 사용해야 합니다. |
기본값은 ` ContentItemImplicitWidth`입니다.
이 속성은 ComboBox 의 implicitWidth 에만 영향을 미치므로, 명시적인 width 을 설정하더라도 생략이 발생할 수 있습니다.
참고: 이 기능을 사용하려면 contentItem이 TextInput 에서 파생된 유형이어야 합니다.
참고: 이 기능을 사용하려면 텍스트의 레이아웃이 설정되어 있어야 하므로, 모델이 크거나 내용이 자주 업데이트되는 모델의 경우 처리 비용이 많이 들 수 있습니다.
이 속성은 QtQuick.Controls 6.0(Qt 6.0)에서 도입되었습니다.
implicitIndicatorHeight : real [read-only, since QtQuick.Controls 2.5 (Qt 5.12)]
이 속성은 암시적 표시기의 높이를 저장합니다.
이 값은 indicator ? indicator.implicitHeight : 0 과 같습니다.
이 속성은 일반적으로 ` implicitContentHeight ` 및 ` implicitBackgroundHeight`과 함께 사용되어 ` implicitHeight`를 계산합니다.
이 속성은 QtQuick.Controls 2.5(Qt 5.12)에서 도입되었습니다.
implicitIndicatorWidth도 참조하십시오 .
implicitIndicatorWidth : real [read-only, since QtQuick.Controls 2.5 (Qt 5.12)]
이 속성은 암시적 표시기 너비를 저장합니다.
이 값은 indicator ? indicator.implicitWidth : 0 과 같습니다.
이 속성은 일반적으로 ` implicitContentWidth ` 및 ` implicitBackgroundWidth`와 함께 사용되어 ` implicitWidth`을 계산합니다.
이 속성은 QtQuick.Controls 2.5(Qt 5.12)에서 도입되었습니다.
implicitIndicatorHeight도 참조하십시오 .
indicator : Item
이 속성은 드롭 표시기 항목을 포함합니다.
'콤보박스 사용자 지정' 항목도 참조하십시오 .
inputMethodComposing : bool [read-only, since QtQuick.Controls 2.2 (Qt 5.9)]
이 속성은 편집 가능한 콤보 박스에 입력 방식에서 부분 텍스트가 입력되었는지 여부를 나타냅니다.
입력 방법이 텍스트를 구성하는 동안, 콤보 박스에서 발생하는 마우스 또는 키 이벤트를 이용하여 부분 텍스트를 편집하거나 확정할 수 있습니다. 이 속성을 사용하면 입력 방법의 정상적인 작동을 방해할 수 있는 이벤트 핸들러를 언제 비활성화해야 할지 판단할 수 있습니다.
이 속성은 QtQuick.Controls 2.2(Qt 5.9)에서 도입되었습니다.
inputMethodHints : flags [since QtQuick.Controls 2.2 (Qt 5.9)]
콤보 박스의 예상되는 내용과 작동 방식에 대한 정보를 입력 방식에 제공합니다.
기본값은 Qt.ImhNoPredictiveText 입니다.
이 값은 플래그들의 비트 단위 조합이거나, 힌트가 설정되지 않은 경우 Qt.ImhNone 입니다.
동작을 변경하는 플래그는 다음과 같습니다:
- Qt.ImhHiddenText - 비밀번호를 입력할 때 일반적으로 사용되는 것처럼 문자가 숨겨져야 합니다.
- Qt.ImhSensitiveData - 입력된 텍스트는 활성 입력 방식에 의해 예측 사용자 사전과 같은 영구 저장소에 저장되어서는 안 됩니다.
- Qt.ImhNoAutoUppercase - 문장이 끝날 때 입력 방식이 자동으로 대문자로 전환하려고 시도해서는 안 됩니다.
- Qt.ImhPreferNumbers - 숫자를 우선적으로 사용해야 합니다(반드시 그래야 하는 것은 아님).
- Qt.ImhPreferUppercase - 대문자를 우선적으로 사용해야 합니다(반드시 그럴 필요는 없음).
- Qt.ImhPreferLowercase - 소문자를 우선적으로 사용해야 합니다(반드시 그래야 하는 것은 아님).
- Qt.ImhNoPredictiveText - 입력하는 동안 예측 텍스트(즉, 사전 조회)를 사용하지 않습니다.
- Qt.ImhDate - 텍스트 편집기가 날짜 입력란으로 작동합니다.
- Qt.ImhTime - 텍스트 편집기가 시간 입력란으로 작동합니다.
입력을 제한하는 플래그(배타적 플래그)는 다음과 같습니다:
- Qt.ImhDigitsOnly - 숫자만 입력할 수 있습니다.
- Qt.ImhFormattedNumbersOnly - 숫자 입력만 허용됩니다. 여기에는 소수점과 마이너스 기호가 포함됩니다.
- Qt.ImhUppercaseOnly - 대문자만 입력할 수 있습니다.
- Qt.ImhLowercaseOnly - 소문자만 입력할 수 있습니다.
- Qt.ImhDialableCharactersOnly - 전화 번호 입력에 적합한 문자만 허용됩니다.
- Qt.ImhEmailCharactersOnly - 이메일 주소에 적합한 문자만 허용됩니다.
- Qt.ImhUrlCharactersOnly - URL에 적합한 문자만 허용됩니다.
마스크:
- Qt.ImhExclusiveInputMask - 배타적 플래그 중 하나라도 사용되면 이 마스크는 0이 아닌 값을 반환합니다.
이 속성은 QtQuick.Controls 2.2(Qt 5.9)에서 도입되었습니다.
model : model
이 속성은 콤보 박스에 데이터를 제공하는 모델을 포함합니다.
ComboBox {
textRole: "key"
model: ListModel {
ListElement { key: "First"; value: 123 }
ListElement { key: "Second"; value: 456 }
ListElement { key: "Third"; value: 789 }
}
}popup : Popup
이 속성은 팝업을 포함합니다.
필요한 경우 팝업을 수동으로 열거나 닫을 수 있습니다:
onSpecialEvent: comboBox.popup.close()'콤보박스 사용자 지정' 항목도 참조하십시오 .
pressed : bool [read-only]
이 속성은 콤보 박스 버튼이 물리적으로 눌려 있는지 여부를 나타냅니다. 버튼은 터치 이벤트나 키 이벤트를 통해 눌릴 수 있습니다.
down도 참조하십시오 .
selectTextByMouse : bool [since QtQuick.Controls 2.15 (Qt 5.15)]
이 속성은 편집 가능한 ComboBox 의 텍스트 필드를 마우스로 선택할 수 있는지 여부를 나타냅니다.
기본값은 ` false`입니다.
이 속성은 QtQuick.Controls 2.15(Qt 5.15)에서 도입되었습니다.
textRole : string
이 속성은 콤보 박스에 데이터를 채우는 데 사용되는 모델 역할을 저장합니다.
모델에 여러 역할이 있는 경우, textRole 를 설정하여 표시할 역할을 지정할 수 있습니다.
model, currentText, displayText 및 ComboBox Model Roles도 참조하십시오 .
validator : Validator [since QtQuick.Controls 2.2 (Qt 5.9)]
이 속성은 편집 가능한 콤보 박스에 대한 입력 텍스트 유효성 검사기를 포함합니다.
유효성 검사기가 설정되면, 텍스트 필드는 텍스트 속성을 중간 상태로 유지하는 입력만 허용합니다. accepted 신호는 Return 또는 Enter 키가 눌렸을 때 텍스트가 허용 가능한 상태일 경우에만 발생합니다.
현재 지원되는 유효성 검사기는 IntValidator, DoubleValidator 및 RegularExpressionValidator 입니다. 다음은 유효성 검사기를 사용하여 텍스트 필드에 0 과 10 사이의 정수만 입력할 수 있도록 하는 예시입니다:
ComboBox {
model: 10
editable: true
validator: IntValidator {
top: 9
bottom: 0
}
}이 속성은 QtQuick.Controls 2.2(Qt 5.9)에서 도입되었습니다.
acceptableInput, accepted 및 editable도 참조하십시오 .
valueRole : string [since QtQuick.Controls 2.14 (Qt 5.14)]
이 속성은 모델 내 각 항목과 연관된 값을 저장하는 데 사용되는 모델 역할을 나타냅니다.
이 속성의 사용 예제는 ComboBox Model Roles 을 참조하십시오.
이 속성은 QtQuick.Controls 2.14(Qt 5.14)에서 도입되었습니다.
model 및 currentValue도 참조하십시오 .
신호 문서
[since QtQuick.Controls 2.2 (Qt 5.9)] void accepted()
이 신호는 editable 콤보 박스에서 ‘ Return ’ 또는 ‘ Enter ’ 키가 눌렸을 때 발생합니다.
이 신호를 처리하여 새로 입력된 항목을 모델에 추가할 수 있습니다. 예를 들면 다음과 같습니다.
ComboBox {
editable: true
model: ListModel {
id: model
ListElement { text: "Banana" }
ListElement { text: "Apple" }
ListElement { text: "Coconut" }
}
onAccepted: {
if (find(editText) === -1)
model.append({text: editText})
}
}신호가 발생하기 전에, 해당 문자열이 모델에 존재하는지 확인하는 검사가 수행됩니다. 존재할 경우, currentIndex 에는 해당 인덱스가, currentText 에는 문자열 자체가 설정됩니다.
신호가 발송된 후, 첫 번째 확인이 실패한 경우(즉, 항목이 존재하지 않았던 경우), 신호 핸들러에 의해 항목이 추가되었는지 확인하기 위한 또 다른 검사가 수행됩니다. 추가된 경우, currentIndex 와 currentText 가 그에 따라 업데이트됩니다. 그렇지 않은 경우, 각각 -1 와 "" 로 설정됩니다.
참고: 콤보 박스에 validator 이 설정되어 있는경우 , 입력이 허용 가능한 상태일 때만 신호가 발생합니다.
참고: 해당 핸들러는 onAccepted 입니다.
이 신호는 QtQuick.Controls 2.2(Qt 5.9)에서 도입되었습니다.
void activated(int index)
이 신호는 index 에 있는 항목이 사용자에 의해 활성화될 때 발생합니다.
항목은 팝업이 열려 있는 상태에서 선택되어 팝업이 닫히거나( currentIndex 의 값이 변경됨), 팝업이 닫힌 상태에서 키보드를 통해 콤보 박스를 탐색하여 currentIndex 의 값이 변경될 때 활성화됩니다. currentIndex 속성은 index 로 설정됩니다.
참고: 이에 대응하는핸들러는 onActivated 입니다.
currentIndex도 참조하십시오 .
void highlighted(int index)
이 신호는 팝업 목록의 index 위치에 있는 항목이 사용자에 의해 강조 표시될 때 발생합니다.
highlighted 신호는 팝업이 열려 있고 항목이 선택된 경우에만 발생하지만, 반드시 activated 일 필요는 없습니다.
참고: 이에 해당하는핸들러는 onHighlighted 입니다.
highlightedIndex도 참조하십시오 .
메서드 문서
void decrementCurrentIndex()
콤보 박스의 현재 인덱스를 감소시키거나, 팝업 목록이 표시되어 있는 경우 강조 표시된 인덱스를 감소시킵니다.
currentIndex 및 highlightedIndex도 참조하십시오 .
int find(string text, enumeration flags)
지정된 text 의 인덱스를 반환하며, 일치하는 항목이 없는 경우 -1 를 반환합니다.
검색 방식은 지정된 일치 조건 flags 에 따라 결정됩니다. 기본적으로 콤보 박스는 대소문자를 구분하는 정확한 일치(Qt.MatchExactly)를 수행합니다. Qt.MatchCaseSensitive 플래그가 함께 지정되지 않는 한, 다른 모든 일치 유형은 대소문자를 구분하지 않습니다.
| 상수 | 설명 |
|---|---|
Qt.MatchExactly | 검색어가 정확히 일치합니다(기본값). |
Qt.MatchRegularExpression | 검색어가 정규 표현식으로 일치합니다. |
Qt.MatchWildcard | 검색어가 와일드카드를 사용하여 일치합니다. |
Qt.MatchFixedString | 검색어가 고정된 문자열로 일치합니다. |
Qt.MatchStartsWith | 검색어가 항목의 시작 부분과 일치합니다. |
Qt.MatchEndsWith | 검색어가 항목의 끝과 일치합니다. |
Qt.MatchContains | 검색어가 항목에 포함되어 있습니다. |
Qt.MatchCaseSensitive | 검색은 대소문자를 구분합니다. 참고: 이 함수는 ComboBox 에 대해 Component.completed()가 호출된 후에만 사용할 수 있습니다. |
예:
ComboBox {
model: ListModel {
ListElement { text: "Banana" }
ListElement { text: "Apple" }
ListElement { text: "Coconut" }
}
Component.onCompleted: currentIndex = find("Coconut")
}textRole도 참조하십시오 .
void incrementCurrentIndex()
콤보 박스의 현재 인덱스를 증가시키거나, 팝업 목록이 표시되어 있는 경우 강조 표시된 인덱스를 증가시킵니다.
currentIndex 및 highlightedIndex도 참조하십시오 .
[since QtQuick.Controls 2.14 (Qt 5.14)] int indexOfValue(object value)
지정된 value 의 인덱스를 반환하며, 일치하는 항목이 없는 경우 -1 를 반환합니다.
이 메서드의 사용 예제는 ComboBox Model Roles 을 참조하십시오.
참고: 이 함수는 ComboBox 에 대해 Component.completed()이 발행된 후에만 사용할 수 있습니다.
이 메서드는 QtQuick.Controls 2.14(Qt 5.14)에서 도입되었습니다.
find(), currentValue, currentIndex, valueRole 및 valueAt도 참조하십시오 .
[since QtQuick.Controls 2.2 (Qt 5.9)] void selectAll()
콤보 박스의 편집 가능한 텍스트 필드에 있는 모든 텍스트를 선택합니다.
이 메서드는 QtQuick.Controls 2.2(Qt 5.9)에서 도입되었습니다.
editText도 참조하십시오 .
string textAt(int index)
지정된 index 에 해당하는 텍스트를 반환하며, 인덱스가 범위를 벗어난 경우에는 빈 문자열을 반환합니다.
참고: 이 함수는 ComboBox 에 대해 Component.completed()이 호출된 후에만 사용할 수 있습니다.
예:
ComboBox {
model: ListModel {
ListElement { text: "Banana" }
ListElement { text: "Apple" }
ListElement { text: "Coconut" }
}
onActivated: (index) => { print(textAt(index)) }
}참조: textRole.
[since QtQuick.Controls 2.14 (Qt 5.14)] var valueAt(int index)
콤보 박스의 index 위치에 있는 값을 반환합니다.
이 메서드는 QtQuick.Controls 2.14(Qt 5.14)에서 도입되었습니다.
indexOfValue도 참조하십시오 .
© 2026 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.