BlackBerry 10 - 对话框

时间:2013-09-04 07:03:33

标签: c++ qt blackberry-10 cascade

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

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

        onTriggered: {
            _contactRead.contactEditor.saveContact()

            navigationPane.pop()
        }
    }

当我们点击保存或创建联系人时,我想显示弹出窗口(对话框或吐司)。我试图在onTriggered中添加open()但是混淆了如何以及在何处创建对话框。

请帮帮我....

1 个答案:

答案 0 :(得分: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;
}

For sample app from here