Coment dessiner sur un JPanel a partir d'une autre classe? - Java - Programmation
Marsh Posté le 25-11-2002 à 23:56:24
c'est sans doute parce que ton panel est pas encore affiché quand tu appelles ça : le contexte graphique (l'objet Graphics) n'est instancié qu'à l'affichage.
Marsh Posté le 25-11-2002 à 23:58:52
gfive!
y'a un topic à moi tout chaud qui n'attend que toi!!
Marsh Posté le 26-11-2002 à 12:44:09
marche pas meme si j'appelle ma fonction apres tous les desins (et afichage) de mon JPanel
d'autres idées?
Marsh Posté le 26-11-2002 à 13:04:39
réctification : c en ecrivant le up que je me suis rendu compte que j'avais oublié d'essayer un truc
Citation : le contexte graphique (l'objet Graphics) n'est instancié qu'à l'affichage. |
g mis l'appel de ma fonction apres le show() du JFrame
maintenant ca s'execute mais mon affichage est ecrasé par le paintComponent du Jpanel en question=/
Marsh Posté le 26-11-2002 à 14:24:28
C zarb, ton truc..enfin, je crois que tu devrais changer d'approche : le dessin de ta ligne, il faut qu'il soit fait DANS la méthode paintComponent (enfin, du coup, dans paint() en fait, puisque paintComponent appelle paint)
Marsh Posté le 27-11-2002 à 12:06:21
Le probleme c'est que dans le "cahier des charcges" j'ai
* Une Classe Echiquier qui permet de dessiner l'echiquier...
*une Classe Piece qui permet de dessiner la piece et de la déplacer ... .
c assez vague sur la maniere de dessiner une piece
Marsh Posté le 27-11-2002 à 13:58:21
bah....Dans un cas comme ça, il faut que tu réfléchisses de façon plus "objet", je dirais :
Il te faut :
- Une classe "modèle d'échiquier", qui sait où sont les pièces,
- Une classe "echiquier" qui sait dessiner l'échiquer : elle demande au modèle les pièces à dessiner, puis donne à chaque pièce son context graphique, et lui "demande" de se dessiner dessus...
Perso, je ferais un truc du stye :
Code :
|
Bon, après, le "for" est sans doute pas ce qu'on fait de mieux, mais c'est pas le point important dans ce design...L'important, c'est de bien séparer la "symbolique" (emplacement de la pièce, propriétaire, etc...géré dans le modèle, et dans les implémentations de l'interface pièce) et le dessin de l'échiquier, qui ne doit pas dépendre des pièces : il se fait toujours de la même façon..
Pour être rigoureux, il faudrait même 2 interfaces pour la pièce : une qui contient ses données (position, déplacements possibles à partir de la position, couleur, etc..) et une qui sait comment dessiner sa représentation à l'écran.
ouala ouala..
Marsh Posté le 25-11-2002 à 22:17:41
alors voila dans mon appli g une classe qui extend JPanel dont g surchargé la methode paintComponent() pour réaliser un dessin
maintenant j'aimerais bien rajouter des dessins pardessus g essayé ca:
et ca marche pas NullPointerExeption
Aidez moi s'il vous plait