-5
Dialog::Dialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::Dialog)
{
    ui->setupUi(this);
    connect(ui->addButton , SIGNAL(clicked()) , this , SLOT(addItem()));
    connect(ui->editButton , SIGNAL(clicked()) , this , SLOT(editItem()));
    connect(ui->deleteButton , SIGNAL(clicked()) , this , SLOT(deleteItem()));
}

void Dialog::addItem()
{
    EditDialog dlg(this);
    dlg.show();

    if(dlg.exec() == EditDialog::Accepted)
    {
        ui->list->addItem(dlg.name() + "--" + dlg.number());
    }
}

那是一个添加项目的类对话框。当我运行程序并单击按钮执行对话框时,它什么也不做,那么解决方案是什么?

4

1 回答 1

2

您需要使用 QDialog::Accepted

如果您查看的文档QDialog::exec您会看到它从QDialog::DialogCode枚举中返回一个值 - 其中的值是QDialog::AcceptedQDialog::Rejected

于 2011-10-01T04:24:33.260 回答