Pergunta

Eu estou construindo um um aplicativo usando Qt na plataforma Symbian / S60 e eu queria saber se havia uma janela de notificação padrão que eu poderia usar para passar mensagens para os usuários. Usando outras plataformas como exemplos, eu estou procurando algo equivalente ao alerta do Javascript método () ou NSRunAlert do Cacau * métodos.

Se não houver um Symbian / S60 nativa equivalente, há algo no espaço Qt que eu deveria estar olhando? QMessageBox não parecem funcionar como eu poderia esperar.

Foi útil?

Solução

Você pode usar a classe RNotifier partir de qualquer código Symbian (e do Qt também). Esta classe pode mostrar notificações até mesmo de programas janela-less, como servidores Symbian. É simples de usar:

    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();

Depois de User :: WaitForRequest (lStatus) completa você pode inspecionar valor de buttonVal saber qual botão foi pressionado. Ela é definida como: 0, se o botão esquerdo é selecionado; 1, se o botão direito é selecionado.

Espero que isso ajude.

Outras dicas

Aparentemente, não há uma maneira de acessar as janelas de notificação nativas da Qt adequada. Eu encontrei o seguinte:

//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");

Ainda não o que eu estou procurando, mas ele vai ter que fazer.

Fonte: Nokia

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top