在我的 QT C++ 应用程序中,我调用了带有 2 个按钮(确定/取消)的 QML ModalDialog,它在屏幕上正确显示,所以没有问题。
但是我正在努力寻找一种方法来在我的 QT C++ 应用程序中检索哪个按钮被按下。
当我调用 QML ModalDialog 时,我无法以某种方式“卡住”,等待用户按下“确定”按钮或“取消”按钮 我看到的是应用程序调用 QML ModalDialog,并立即退出该部分并继续。
QMetaObject::invokeMethod 可以调用 QML 函数并有返回值,但它不会等待用户按下其中一个按钮,它会立即退出,所以没有用。
我想在我的应用程序的几个地方使用这个 QML ModalDialog(QML 模式 对话框可以从我的 QT C++ 应用程序中传递不同的文本),所以我一直在寻找一个通用的解决方案。
基本上和一般来说,我正在寻找这样的东西:
C/C++ return_value = QML_Modal_Dialog(....)
有人能指出我正确的方向吗?谢谢
最佳答案
QML 模态对话框带有两个信号“已接受”和“已取消”。如果您在代码中为这两个信号提供处理程序,您将能够知道按下了哪个按钮。 您可以引用以下内容。
希望这对您有所帮助!
关于c++ - 从 QML 模态对话框中检索值的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5862458/