Domanda

Sto costruendo un'applicazione usando Qt sulla piattaforma Symbian / S60 e mi chiedevo se esistesse una finestra di notifica standard che potevo usare per passare messaggi agli utenti. Usando altre piattaforme come esempi, sto cercando qualcosa di equivalente al metodo alert () di Javascript o ai metodi NSRunAlert * di Cocoa.

Se non esiste un equivalente Symbian / S60 nativo, c'è qualcosa nello spazio Qt che dovrei guardare? QMessageBox non sembra funzionare come mi aspettavo.

È stato utile?

Soluzione

Puoi usare la classe RNotifier da qualsiasi codice Symbian (e anche da Qt). Questa classe può mostrare le notifiche anche da programmi senza finestre, come i server Symbian. È semplice da usare:

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

Al termine dell'utente :: WaitForRequest (lStatus) è possibile controllare il valore di buttonVal per sapere quale pulsante è stato premuto. È impostato su: 0, se è selezionato il pulsante sinistro; 1, se è selezionato il pulsante destro.

Spero che questo aiuti.

Altri suggerimenti

Apparentemente non esiste un modo per accedere alle finestre di notifica native da Qt corretto. Ho trovato il seguente:

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

Non è ancora quello che sto cercando, ma dovrà farlo.

Fonte: Nokia

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top