BP Boîte de dialogue JOptionPane.showMessage

maxicoco -  
 maxicoco -
PB avec boîte de dialogue
JOptionPane.showMessageDialog(this,"message","Avertissement",JOptionPane.ERROR_MESSAGE);
le "this" est refusé...
Ais-je oublié une déclaration particulière ?
J'ai pourtant fait l'import de la classe javax.swing.*;
Merci par avance
A voir également:

4 réponses

Chacual Messages postés 230 Statut Membre 150
 
this représente quelle classe ?
0
maxicoco
 
Je débute...
Je pensais que this représentait la page parente. Autrement dit, que la boîte de dialogue devait s'appliquer à cette page et donc s'afficher en premier plan.
Si je mets null, la boite de dialogue s'affiche en arrière plan. D'où peut être ma mauvaise compréhension...

Bon, pour faire plus simple, je souhaite que la boîte de dialogue (erreur, avertissement...) s'affiche en premier plan.
0
Posotaz Messages postés 505 Statut Membre 225
 
Salut,

Si tu appelle this dans une classe, c'est l'instance de cette classe qu'il désigne.

En regardant dans l'API Java tu trouves les déclarations suivantes :

static void showMessageDialog(Component parentComponent, Object message)
static void showMessageDialog(Component parentComponent, Object message, String title, int messageType)
static void showMessageDialog(Component parentComponent, Object message, String title, int messageType, Icon icon)

Ton this doit donc référencer un objet de type Component pouvant être le parent de ta boîte de dialogue. Plus généralement on choisit une JFrame pour composant (en l'occurrence la JFrame de ton application).

PS : Importer le package entier javax.swing ne permet pas toujours de résoudre tous les imports. Parfois il vaut mieux spécifier le chemin complet. Je te conseille nénamoins de programmer à l'aide d'Eclipse (https://www.eclipse.org/ utilisé par de nombreux programmeurs (débutants ou pas).
0
maxicoco
 
Merci Posotaz de m'avoir accordé un peu de ton temps...
Je travaille sous Eclipse mais là encore je débute.

Je me plonge dans tous tes conseils et je vois...
A +
0