1

我是 Qt 开发的新手,并且了解 C++。我在 Qt 中创建了一些示例,但都是单一形式的示例。

现在我想创建这样的应用程序,它有多个表单,所以我想知道:

1.如何从一种形式导航到另一种形式

2.如何将数据从一个Form传递到另一个Form ...

提前谢谢。

4

1 回答 1

2

对于模态对话框,您只需在堆栈上创建对话框的新实例。将数据传递到此对话框的一种方法是使用构造函数参数:

MyDialog dlg(param1,param2,param3);
if (dlg.exec())
{
    // ... process data from the dlg ...
    // call whatever public methods on the dialog while it still exists
    // e.g.
    myvar = dlg.getReturnValue();
}

对于模态对话框,您可以使用它setResult来确定用户是接受还是拒绝了该对话框。这是在上面的 if 语句中查询的。

无模式对话框可能应该在更广泛的范围内创建(甚至可能是全局的或使用动态创建)

if (! modelessDlg)
{
    modelessDlg = new MyModelessDlg(param1,param2);
}

modelessDlg->show();
于 2012-08-18T13:03:26.740 回答