gpt4 book ai didi

qt - 如何在 QML 中获取对话框红色 'x' 关闭按钮信号

转载 作者:行者123 更新时间:2023-12-04 10:21:48 24 4
gpt4 key购买 nike

如何在qml中拦截对话框的红色“x”关闭按钮的信号?

Dialog
{
id : dialog1
visible : false
title : "dialog1"

onRejected:
{
console.log("Red button x clicked signal") // Not working
}
Button
{
id: exitButton
text : "Exit"
onClicked :
{
console.log("exit button clicked") // this works
robotCalibrationDialog.visible = false
}
}

我已经尝试了 qml 对话框的所有信号,但似乎没有一个适用于 x 红色按钮。

最佳答案

在这里,我希望“X”按钮的行为与被拒绝时完全一样。如果你愿意,你可以调用不同的信号,但我个人保持它与被拒绝的信号相同。

signal yesButtonClicked()
signal noButtonClicked()
signal rejectedButtonClicked()
signal acceptedButtonClicked()
property bool xButton: true

Dialog{

id: dialogId
title: dialogTitle
onYes: {
xButton = false
yesButtonClicked()
}
onNo: {
xButton = false
noButtonClicked()
}
onRejected: {
xButton = false
rejectedButtonClicked()
}
onAccepted: {
xButton = false
acceptedButtonClicked()
}
onVisibilityChanged: {
if (!this.visible && xButton){
rejectedButtonClicked()
}
if (this.visible){
xButton = true
}
}

关于qt - 如何在 QML 中获取对话框红色 'x' 关闭按钮信号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41509003/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com