我正在Symbian / S60平台上使用Qt构建一个应用程序,我想知道是否有一个标准的通知窗口可以用来将消息传递给用户。使用其他平台作为示例,我正在寻找与Javascript的alert()方法或Cocoa的NSRunAlert *方法等效的东西。
如果没有本机的Symbian / S60等价物,Qt空间中有什么我应该看的东西吗? QMessageBox似乎没有像我预期的那样工作。
答案 0 :(得分:5)
显然,没有办法从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");
仍然不是我想要的,但它必须这样做。
来源:Nokia
答案 1 :(得分:4)
您可以从任何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,如果选择了右键。
希望这有帮助。