Bug d'affichage avec un JPanel transparent

[Résolu/Fermé]
Signaler
Messages postés
473
Date d'inscription
vendredi 6 décembre 2013
Statut
Membre
Dernière intervention
1 novembre 2018
-
Messages postés
473
Date d'inscription
vendredi 6 décembre 2013
Statut
Membre
Dernière intervention
1 novembre 2018
-
Salut KX (nan déso, mais y a que toi ici :-p)...
Bon j'ai essayé de me prendre en main, et me suis laissé deux jours pour "essayer" de régler mon problème ... Bien sûr, j'ai pas réussi :'(.
Voilà donc je suis entrain de faire une appli (plutôt un jeu) pour un ami, fan de catch ... Un quizz, donc jusque là tout marche bien ... Mais lors ce que l'on trouve le bon nom de catcheur, je voudrais avoir un JPanel transparent qui se superpose à l'autre JPanel.. Mais le problème c'est que j'ai un malheureux bug d'affichage que voici :



: Pourquoi il y a le "Z" la bas (franchement j'étais mort de rire, tellement je ne COMPRENAIS pas ce qu'il foutait là) le code :
public void mouseReleased(MouseEvent e) {
	temp.setBorderPainted(false);
		if (word.getText().equals(answer)) {
		butPan.revalidate();
		butPan.repaint();
		game.revalidate();
		game.repaint();
		WinPanel = new WinPanel();
//		revalidate();
//		repaint();
		winPanel.setPreferredSize(getSize());
		setContentPane(winPanel);
		isKFMEnabled = true;
//		iniInfosBrowser();
	}
}

Sachant que quand j'enlève :
temp.setModel(new FixedStateButtonModel());

(qui me permet de ne pas avoir un effet bleu transparent, quand on passe au dessus des boutons) la bordure rouge disparaît :'( (ps cette bordure, est une bordure qui s'active lors du clique)

NB : les boutons-lettres sont dans l'ordre, mais j'y travaille (même si j'ai déjà un bug, pour fouiller dans l'arraylist) + je sais, rien n'est fait, je viens de finir le prototype :)

PS : pour javafx, je pense que je vais faire sans le FXMLLoader, où je demanderai ailleurs.
Et mon chat à bien bossé pour les noms de classes :)

1 réponse

Messages postés
16373
Date d'inscription
samedi 31 mai 2008
Statut
Modérateur
Dernière intervention
4 août 2021
2 861
Bonjour,

Du coup ta question c'est quoi ?

Quant à ton Z qui se promène ça ressemble à un problème de repaint.

Mais sans le code pour tester ça va être dur de trouver le problème.

Remarque : normalement tu ne devrais quasiment jamais avoir besoin de faire ce genre de code :

butPan.revalidate();
butPan.repaint();
game.revalidate();
game.repaint();

...et encore moins dans un Listener qui bloque l'affichage de l'EDT donc faire des actions dessus c'est pas très propre.
Messages postés
473
Date d'inscription
vendredi 6 décembre 2013
Statut
Membre
Dernière intervention
1 novembre 2018
70
Yep, je sais, mais j'ai fait ça dans un moment désespéré, mais je viens d'y réfléchir, en voulant faire une capture d'écran pour montrer à mon ami, j'ai voulu mettre trois fenêtre à des stades différents du "jeu" .. Et elle ne rentrer pas toute ... Et donc celle de l'écran transparent, débordé, et en voulant la repositionner je me suis aperçu que le côté qui avait débordé était devenu gris ... Donc c'est un problème d'affichage, est-ce qu'un "screenshot" de la frame, transformé en image, puis en appliquant le "filtre" de transparence suffirait ?
Bon je te laisse 1 journée pour me répondre ^^
Ps : si tu as le temps tu me dis comment on fait ? :) (sans me donner tout le code, y a aucun challenge sinon)
Messages postés
473
Date d'inscription
vendredi 6 décembre 2013
Statut
Membre
Dernière intervention
1 novembre 2018
70 >
Messages postés
473
Date d'inscription
vendredi 6 décembre 2013
Statut
Membre
Dernière intervention
1 novembre 2018

Edit : Enfaite, je vais faire une méthode dans le panel "Game"pour activer la transparence