bonjour a tous,
Je dois faire un petit exercice qui consiste en l'affichage des scores pour un bowling (le resultat que j'aimerais obtenie ressemble a la figure ci-dessous). Je n'ai pas de connaissances tres approfondies dans les interfaces graphiques en Java et ca fait plusieurs jours que je me tire les cheveux.
Voici les deux "solutions" auxquelles je suis arrivee mais soit je n'arrive pas l'implemente, soit la solution ne me satisfait pas completement:
1) Je cree un JTable et pour les cellules de la 2/3 et 4/5 lignes, j'y mets un JPanel contenant 3 JLabel (2 au dessus pour les scores de chaque lance et un en dessous pour le score pour un frame). Je n'arrive pas a implemente cette solution. De ce que j'avais compris, il faudrait creer un objet qui "herite" de l'interface TableCellRenderer et definir la fonction public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column). Mais comment la redefinir pour voir mon JPanel comme je l'ai defini?
Je me suis base sur ce site internet pour faire ceci mais, je n'ai pas bien compris comment la personne parvenait a afficher son JPanel dans la cellule de son JTable: https://www.pekalicious.com/blog/cus...tons-in-jtable
2) J'essaye de cree moi-meme mon tableau a partir d'un JPanel en utilisant un GridBagLayout pour un maximum de flexibilite. Pour dessiner le tableau, j'utilise alors setBorder sur les differents JLabel. A ce moment la, je commence a avoir du chipotage dans le code pour avoir suffisamment d'espace pour chaque texte dans la cellule et que les lignes s'alignent correctement etc. De plus, c'est beaucoup moins flexible que d'utiliser un JTable.
Est-ce que vous pourriez m'aider pour l'une ou l'autre maniere d'implementer un tableau comme je le voudrais ?
Partager