如何使用QML控件元素(如combobox、textfield、checkbox…)创建消息对话框

如何使用QML控件元素(如combobox、textfield、checkbox…)创建消息对话框,combobox,qml,qt5,qt-quick,messagedialog,Combobox,Qml,Qt5,Qt Quick,Messagedialog,我想用以下方式创建一个消息对话框 例如:我的组合框有两个名称,“chkbx”(复选框的符号名称),“txtedt”(文本字段的符号名称) 每当我从组合框下拉列表中选择chkbox或txtedt时,我的组合框应该分别将我连接到实际的复选框和文本编辑元素 我在状态栏上有一个“显示对话框”按钮,当我按下该按钮时,它将弹出所选选项(复选框或行编辑) 请告诉我怎么做 编辑下面是代码,我使用组合框选项面临的问题是,我既不能在消息对话框中获取图标,也不知道如何在消息对话框中查看复选框或行编辑,我是一个初学者,

我想用以下方式创建一个消息对话框

例如:我的组合框有两个名称,“chkbx”(复选框的符号名称),“txtedt”(文本字段的符号名称)

每当我从组合框下拉列表中选择chkboxtxtedt时,我的组合框应该分别将我连接到实际的复选框和文本编辑元素

我在状态栏上有一个“显示对话框”按钮,当我按下该按钮时,它将弹出所选选项(复选框或行编辑)

请告诉我怎么做

编辑下面是代码,我使用组合框选项面临的问题是,我既不能在消息对话框中获取图标,也不知道如何在消息对话框中查看复选框或行编辑,我是一个初学者,正在努力探索QML中使用的棘手方法

导入QtQuick 2.2
导入QtQuick.Controls 1.2
导入QtQuick.Dialogs 1.1
导入QtQuick.Window 2.0
项目{
id:根
宽度:580
身高:400
SystemPalette{id:palette}
剪辑:对
//![messagedialog]
消息对话框{
id:messageDialog
可见:messageDialogVisible.checked
模态:messageDialogModal.checked?Qt.WindowModal:Qt.NonModal
标题:windowTitleField.text
text:customizeText.checked?textField.text:“
informativeText:customizeInformativeText.checked?informativeText.text:“
onButtonClicked:console.log(“单击按钮”+单击按钮)
onAccepted:lastSelected.text=“已接受”+
(clickedButton==标准按钮。确定?”(确定):(clickedButton==标准按钮。重试?”(重试)”:“(忽略)”)
onRejected:LastSelected.text=“已拒绝”+
(clickedButton==StandardButton.Close?”(Close)”:(clickedButton==StandardButton.Abort?”(Abort)”:“(Cancel)”)
onHelp:lastcelected.text=“呼救!”
onYes:lastcelected.text=(单击按钮==标准按钮。是吗?“是的!!”:“是的,现在和永远”)
onNo:LastSelected.text=(clickedButton==标准按钮。否?“哦,不。”:“不,不”)
}
//![messagedialog]
纵队{
锚定。填充:父级
1.6.利润率:12
间距:8
正文{
颜色:palette.windowText
font.bold:正确
文本:“消息对话框属性:”
}
复选框{
id:messageDialogModal
案文:“情态”
核对:正确
已选中{value:messageDialog.modity!=Qt.NonModal}上的绑定
}
复选框{
id:customizeTitle
文本:“窗口标题”
核对:正确
宽度:parent.width
文本字段{
id:windowTitleField
anchors.right:父项.right
宽度:informativeTextField.width
文本:“警报”
}
}
划船{
正文{
文本:“组合框项目和图标选择:”
}
间距:8
函数createIcon(str){
开关(str){
关键案例:
messageDialog.icon=StandardIcon.Critical
控制台日志(“关键”)
打破
个案问题:
messageDialog.icon=StandardIcon.Question
打破
案例复选框:
//如何在此处添加复选框以在“我的邮件”对话框中显示它?
打破
案例文本编辑:
//如何在此处添加文本编辑以在消息对话框中显示?
打破
违约:
打破
}
}
组合框{
id:cbox
可编辑:真
当前索引:0
模型:ListModel{
id:cbItems
ListElement{text:“Critical”}
列表元素{文本:“问题”}
ListElement{text:“复选框”}
ListElement{text:“textedit”}
}
onCurrentIndexChanged:console.debug(cbItems.get(currentIndex.text)
onAccepted:parent.createIcon(cbItems.get(currentIndex.text)
}
}
复选框{
id:customizeText
文本:“主要文本”
核对:正确
宽度:parent.width
文本字段{
id:textField
anchors.right:父项.right
宽度:informativeTextField.width
文字:“请注意”
}
}
复选框{
id:自定义信息文本
文本:“信息文本”
核对:正确
宽度:parent.width
文本字段{
id:informativeTextField
anchors.right:父项.right
宽度:root.width-CustomizeInformationText.implicitWidth-20
文字:“保持警惕!”
}
}
正文{
文本:“按钮:”
}
流动{
间距:8
宽度:parent.width
属性bool更新:false
函数更新按钮(按钮,选中){
如果(更新)返回
更新=真
变量按钮=0
对于(变量i=0;i