Problème d'interface (Button, GridLayout, Size) [Résolu]

bizzard4 163 Messages postés vendredi 12 décembre 2003Date d'inscription 15 février 2009 Dernière intervention - 18 oct. 2007 à 00:30 - Dernière réponse : bizzard4 163 Messages postés vendredi 12 décembre 2003Date d'inscription 15 février 2009 Dernière intervention
- 20 oct. 2007 à 01:11
Bonjour

Je suis entrain de faire un démineur pour un projet scolaire et j'ai quelques problèmes au niveau de l'interface.
Premièrement, j'ai un GridLayout qui contient toutes les Cases (qui sont des JButton) de mon démineur. Or voila, j'ai beau faire un bouton.setSize(16, 16) ... il prend la taille de toute la cellule qui dépend de la taille de la fenêtre. J'aimerais pouvoir faire que la taille des cellules sois 16x16 ou bien qu'elle dépende de la grosseur du bouton à l'intérieur.

Mon second problème est que lorsque je veux mettre du texte dans mon boutton. il doit etre vraiment trop gros pour enfin voir le texte. A la place il met "...". Ceomment faire pour qu'il affiche le texte même si le bouton est petit ? Pourtant les numéros seraient capable de rentrer dedans.

Mon troisème problème ... le plus Chiannnnntt. C'est que j'ajoute tous mes boutons mais il ne s'affiche pas t'en que je ne passe pas la souri dessu. J'ai beau metre des this.repaint() un peu partout il n'a rien a faire

Voici le constructeur de mes Cases :
    public Case() {
        super();
        //this.setSize(Case.defaultCaseDimension);
        this.setSize(16, 16);
       
        // Valeurs par défaut
        this.position = new Point(0,0);
        this.state = 0;
    }

Et l'initiation de mon GridLayout dans mon Game qui est un JPanel
    public Game(Board pBoard) {
        super();
       
        GridLayout grid = new GridLayout(pBoard.getWidth(), pBoard.getHeight());
       
        //this.setLayout(new GridLayout(pBoard.getWidth(), pBoard.getHeight()));
        this.setLayout(grid);
...

Si vous voulez plus de code dite le moi.

Voila un screenshot du résultat présent avec le problème de la souris qui n'est peut-être pas très clair.

~~ Cordialement François Gingras
Afficher la suite 

Votre réponse

4 réponses

Twinuts 5261 Messages postés dimanche 4 mai 2003Date d'inscription 20 avril 2018 Dernière intervention - 18 oct. 2007 à 21:10
+3
Utile
Salut,

1 - Le problème que tu as est typique du GridLayout... essais d'utiliser un BoxLayout ou un GridBagLayout qui sont beaucoup plus souple pour ce genre de placement (enfin c'est mon avis ^^).
2 - Essais de modifier la police de ton bouton.
3 - Là comme ça je vois pas trop, il faudrait plus d'infos.

En SWING il est préférable d'utiliser la méthode setPreferredSize en lieu et place de la méthode setSize (ça fonctionne mieux avec ^^)

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de Twinuts
bizzard4 163 Messages postés vendredi 12 décembre 2003Date d'inscription 15 février 2009 Dernière intervention - 19 oct. 2007 à 03:59
0
Utile
Super !! le setPreferredSize a réglé le gros problème avec la grosseur des boutons. Pour le texte jai changé les marges pour 0, 0, 0,0 et il apparaît maintenant.

Il ne me reste plus que le problème des boutons qui ne s'affiche pas t'en que je ne passe pas la souris dessus. Il redevienne tout invisible lorsque je met la fenêtre en réduction. Mais ce que je ne comprend pas, c'est que les boutons de mon menu reste et de ma ToolBar aussi. C'est juste les boutons dans mon JPanel Game qui a un GridLayout.

~~ Cordialement Francois Gingras
Commenter la réponse de bizzard4
Twinuts 5261 Messages postés dimanche 4 mai 2003Date d'inscription 20 avril 2018 Dernière intervention - 19 oct. 2007 à 09:42
0
Utile
Salut,

si le code est trop gros vient me voir en MP je te donnerais un mail pour que tu puisse me l'envoyer, mais dans tout les cas il faut le code pour voir ce qu'il se passe et t'aider à debug ton application

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
Commenter la réponse de Twinuts
bizzard4 163 Messages postés vendredi 12 décembre 2003Date d'inscription 15 février 2009 Dernière intervention - 20 oct. 2007 à 01:11
0
Utile
Enfin !!

J,ai trouver le problème à mon bugue.

Javait uen classe Case qui Extends de JButton. Cette classe avait les méthode getX() et getY() qui sont en override !! Ici es le probème. En changant le nom de ses méthodes les boutons s'affiche !!!!

Merci pour les autres réponses !

~~ Cordialement Francois Gingras
Commenter la réponse de bizzard4

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.