Стандартные уведомления или стили оповещений в Symbian (Qt / S60)? - PullRequest
3 голосов
/ 28 октября 2009

Я создаю приложение с использованием Qt на платформе Symbian / S60, и мне было интересно, есть ли стандартное окно уведомлений, которое я мог бы использовать для передачи сообщений пользователям. Используя другие платформы в качестве примеров, я ищу что-то эквивалентное методу alert () Javascript или методам NSRunAlert * компании Cocoa.

Если нет собственного эквивалента Symbian / S60, есть ли что-то в пространстве Qt, на которое я должен смотреть? QMessageBox, похоже, не работает так, как я мог бы ожидать.

Ответы [ 2 ]

5 голосов
/ 29 октября 2009

Видимо, нет способа получить доступ к родным окнам уведомлений из собственно 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

4 голосов
/ 25 июня 2010

Вы можете использовать класс RNotifier из любого кода Symbian (и из Qt тоже). Этот класс может отображать уведомления даже из безоконных программ, таких как серверы 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, если выбрана правая кнопка.

Надеюсь, это поможет.

...