Quantcast
Viewing all articles
Browse latest Browse all 4972

How to add a check box or line edit elements in a combo box in Qt Quick

Hi Dheerendra, Thanks a lot but still its not what i am trying to acheive. I am posting my code, please have a look. Here is the code and the problem i am facing with combobox options is, neither i am not able to get icons in my message dialog nor i dont know how i can see checkbox or line edit in message dialog, i am a beginner and struggling to explore the tricky ways used in QML. import QtQuick 2.2     import QtQuick.Controls 1.2     import QtQuick.Dialogs 1.1     import QtQuick.Window 2.0         Item {         id: root         width: 580         height: 400         SystemPalette { id: palette }         clip: true             //! [messagedialog]         MessageDialog {             id: messageDialog             visible: messageDialogVisible.checked             modality: messageDialogModal.checked ? Qt.WindowModal : Qt.NonModal             title: windowTitleField.text             text: customizeText.checked ? textField.text : ""             informativeText: customizeInformativeText.checked ? informativeTextField.text : ""             onButtonClicked: console.log("clicked button " + clickedButton)             onAccepted: lastChosen.text = "Accepted " +                 (clickedButton == StandardButton.Ok ? "(OK)" : (clickedButton == StandardButton.Retry ? "(Retry)" : "(Ignore)"))             onRejected: lastChosen.text = "Rejected " +                 (clickedButton == StandardButton.Close ? "(Close)" : (clickedButton == StandardButton.Abort ? "(Abort)" : "(Cancel)"))             onHelp: lastChosen.text = "Yelped for help!"             onYes: lastChosen.text = (clickedButton == StandardButton.Yes ? "Yeessss!!" : "Yes, now and always")             onNo: lastChosen.text = (clickedButton == StandardButton.No ? "Oh No." : "No, no")                     }         //! [messagedialog]             Column {             anchors.fill: parent             anchors.margins: 12             spacing: 8             Text {                 color: palette.windowText                 font.bold: true                 text: "Message dialog properties:"             }             CheckBox {                 id: messageDialogModal                 text: "Modal"                 checked: true                 Binding on checked { value: messageDialog.modality != Qt.NonModal }             }             CheckBox {                 id: customizeTitle                 text: "Window Title"                 checked: true                 width: parent.width                 TextField {                     id: windowTitleField                     anchors.right: parent.right                    width: informativeTextField.width                     text: "Alert"                 }             }                 Row {                     Text {                     text: "Combo box items and icon selection:"                 }                 spacing: 8                     function createIcon(str) {                     switch(str) {                              case Critical:                         messageDialog.icon = StandardIcon.Critical                          console.log("Critical")                           break;                           case Question:                          messageDialog.icon = StandardIcon.Question                               break;                             case  checkbox:                                 //how to add checkbox here in order to show it in my message dialog ?                                 break;                           case  textedit:                               //how to add textedit here in order to show it in message dialog ?                                 break;                           default:                               break                           }                       }                    ComboBox {                     id : cbox                     editable: true                     currentIndex: 0                     model: ListModel {                         id: cbItems                         ListElement { text: "Critical"}                         ListElement { text: "Question"}                         ListElement { text: "checkbox"}                         ListElement { text: "textedit"}                     }                    onCurrentIndexChanged: console.debug(cbItems.get(currentIndex).text)                        onAccepted: parent.createIcon(cbItems.get(currentIndex).text)                      }                     }                   Rectangle {             anchors {                 left: parent.left                 right: parent.right                 bottom: parent.bottom             }             height: buttonRow.height * 1.2             color: Qt.darker(palette.window, 1.1)             border.color: Qt.darker(palette.window, 1.3)             Row {                 id: buttonRow                 spacing: 6                 anchors.verticalCenter: parent.verticalCenter                 anchors.left: parent.left                 anchors.leftMargin: 12                 width: parent.width                 Button {                     text: "Show Dialog"                     anchors.verticalCenter: parent.verticalCenter                     onClicked: messageDialog.open()                 }                 Button {                     text: "Close"                     anchors.verticalCenter: parent.verticalCenter                     onClicked: messageDialog.close()                 }             }                     }             }

Viewing all articles
Browse latest Browse all 4972

Trending Articles