Bug d'affichage quand clic de souris

georhan Messages postés 14 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 24 novembre 2009 - 25 mars 2004 à 02:16
georhan Messages postés 14 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 24 novembre 2009 - 25 mars 2004 à 15:35
Salut à tous :)

Je suis en train de programmer une sorte d'interface avec JAVA-Swing, et franchement, j'en chie avec les évènements ! ;) Et oui, c'est tout nouveau pour moi.
Après plusieurs essais, je suis (enfin !) arrivé à faire ce que je voulais en cliquant avec la souris... Enfin presque : j'ai une zone graphique (JPanel) dans laquelle j'affiche des axes, un autre JPanel à sa gauche dans lequel j'ai des boutons d'options, un 3ème JPanel contenant ces deux derniers, un JMenu je dirais tout bête et enfin une JFrame contenant le JMenu et le JPanel global. Le problème c'est que quand je clique dans la zone de dessin, j'affiche un x pour marquer le point, mais une partie la JFrame apparaît (en plus) en dessus d'elle même. En fait, je vois le menu et les 2 JPanels sur la JFrame en décalé diagonal.
Savez-vous de quoi cela peut venir ?

Merci d'avance :)

Georhan, programmeur médusé

Il n'y a pas de mauvais programmeur. C'est cette p..... de machine de m... qui n'en fait qu'à sa tête !

6 réponses

dmaillet Messages postés 500 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 11 juillet 2007
25 mars 2004 à 08:57
tu fais un repaint() general ou un revalidate() apres avoir affiche ta croix?
0
georhan Messages postés 14 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 24 novembre 2009
25 mars 2004 à 09:01
Salut :)

Je fais un repaint() à chaque fois que j'ajoute un point. Mais que je réaffiche ou non les axes dans le repaint(), ça fait ce bug.
En fait, je viens de remarquer, je repaint() que la zone de dessin.

Georhan

Il n'y a pas de mauvais programmeur. C'est cette p..... de machine de m... qui n'en fait qu'à sa tête !
0
georhan Messages postés 14 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 24 novembre 2009
25 mars 2004 à 09:18
Edit : En plus la fenêtre qui s'affiche par dessus n'est pas prise en compte. Elle s'efface lorsque j'agrandis ou réduit la fenêtre principale (je fais dans ce cas un repaint() de la zone de dessin).
0
dmaillet Messages postés 500 Date d'inscription mercredi 20 août 2003 Statut Membre Dernière intervention 11 juillet 2007
25 mars 2004 à 09:24
essai le revalidate sur ta frame a la fin de toute tes operations, c'est magique.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
georhan Messages postés 14 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 24 novembre 2009
25 mars 2004 à 14:25
Nan, pas mieux ça fait toujours. J'ai mis des validate() et revalidate() un peu partout...

Il n'y a pas de mauvais programmeur. C'est cette p..... de machine de m... qui n'en fait qu'à sa tête !
0
georhan Messages postés 14 Date d'inscription mardi 26 novembre 2002 Statut Membre Dernière intervention 24 novembre 2009
25 mars 2004 à 15:35
A y est !!! En fait, Il suffisait de faire un repaint() du JPanel global (celui qui contient le JPanel des boutons d'options et la zone graphique).
Bon il me reste à gérer le réaffichage des points lors du changement de taille de la fenêtre.

Encore merci :)

Gerohan

Il n'y a pas de mauvais programmeur. C'est cette p..... de machine de m... qui n'en fait qu'à sa tête !
0
Rejoignez-nous