Bonjour,

Je souhaite mettre en place une méthode 'static' dans une classe, ce qui m'oblige à mettre l'attribut concerné en static également... et donc à l'initialiser dans le .cpp.

C'est assez simple pour une variable de type int ou QString, mais pour une QMessageBox je n'arrive pas à trouver la bonne syntaxe

Voici le .h :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
 
class MsgAlert
{
	private:
		static QMessageBox alertBox;
 
	public:
		static void Affiche(QString);
};
et le .cpp :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
QMessageBox MsgAlert::alertBox = QMessageBox();

void MsgAlert::Affiche(QString chemin){

    QString message = "Fichier introuvable sur le serveur : " + chemin;
    
    alertBox.setIcon(QMessageBox::Warning);
    alertBox.setText("Attention !");
    alertBox.setDetailedText(message);	

    alertBox.show();
}
C'est la première ligne de ce dernier fichier qui me pose toutes les difficultés... alertBox = ?

Je vous souhaite à tous de très bonnes fêtes de fin d'année et encore merci à ceux qui m'ont (bien) aidé en 2011 !