0

我正在开发一个用于接触阅读的应用程序。在联系人添加页面中,我创建了一些文本字段,例如名字 n 姓氏、电话号码等。我创建了一个 ActionItem 来保存或创建联系人。像这样

acceptAction: ActionItem {
        title: (_contactRead.contactEditor.mode == ContactEditor.CreateMode ? qsTr ("Create" ) : qsTr ("Save"))

        onTriggered: {
            _contactRead.contactEditor.saveContact()

            navigationPane.pop()
        }
    }

当我们单击保存或创建联系人时,我想显示弹出窗口(对话框或 toast)。我试图在 onTriggered 中添加 open() 但对创建对话框的方式和位置感到困惑。

请帮帮我....

4

1 回答 1

1

使用 --> alert(tr("联系人已保存"));

请参阅以下示例

------------qml-------------

 Button {
            horizontalAlignment: HorizontalAlignment.Center

            text: qsTr("Update")

            onClicked: {
                _app.updateRecord(idUpdateTextField.text, firstNameUpdateTextField.text, lastNameUpdateTextField.text);
            }
        }

-----------------cpp 文件--------------------

bool App::updateRecord(const QString &customerID, const QString &firstName, const QString &lastName)
{


    bool intConversionGood = false;
    const int customerIDKey = customerID.toInt(&intConversionGood);
    if (!intConversionGood) {
        alert(tr("You must provide valid integer key."));
        return false;
    }


    QSqlDatabase database = QSqlDatabase::database();

    QSqlQuery query(database);
    const QString sqlCommand = "UPDATE customers "
                               "    SET firstName = :firstName, lastName = :lastName"
                               "    WHERE customerID = :customerID";
    query.prepare(sqlCommand);
    query.bindValue(":firstName", firstName);
    query.bindValue(":lastName", lastName);
    query.bindValue(":customerID", customerIDKey);


    bool updated = false;
    if (query.exec()) {

        if (query.numRowsAffected() > 0) {
            alert(tr("Customer with id=%1 was updated.").arg(customerID));
            updated = true;
        } else {
            alert(tr("Customer with id=%1 was not found.").arg(customerID));
        }
    } else {
        alert(tr("SQL error: %1").arg(query.lastError().text()));
    }


    database.close();

    return updated;
}

从这里获取示例应用程序

于 2013-09-04T08:51:34.633 回答