我正在Symbian / S60平台上使用Qt构建一个应用程序,我想知道是否有一个标准的通知窗口,我可以使用它来向用户传递消息。使用其他平台作为示例,我正在寻找与Javascript的alert()方法或Cocoa的NSRunAlert *方法等效的东西。

如果没有本机的Symbian / S60等价物,Qt空间中有什么我应该看的东西吗? QMessageBox似乎没有像我预期的那样工作。

有帮助吗?

解决方案

您可以从任何Symbian代码(以及Qt)使用RNotifier类。该类甚至可以从无窗口程序(如Symbian服务器)显示通知。它使用简单:

    RNotifier notifier;
    User::LeaveIfError(notifier.Connect());
    TInt buttonVal;
    TRequestStatus lStatus;
    notifier.Notify(_L("First line of notification"), _L("Second line of notification"), _L("Left button text"), _L("Right button text"), buttonVal, lStatus);
    User::WaitForRequest(lStatus);
    notifier.Close();

在User :: WaitForRequest(lStatus)完成后,您可以检查buttonVal的值以了解按下了哪个按钮。如果选择了左键,则设置为:0; 1,如果选择了右键。

希望这有帮助。

其他提示

显然,没有办法从Qt正确访问本机通知窗口。我确实找到了以下内容:

//Create warning message box
QMessageBox::warning(0,"Warning", "Warning message text");
//Create information message box
QMessageBox::information(0, "Information", "Information message text");
//Create critical message box
QMessageBox::critical(0, "Critical", "Critical message text");

仍然不是我想要的,但它必须这样做。

来源:诺基亚

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top