Affichage Matrice

aonyx45 Messages postés 1 Statut Membre -  
KX Messages postés 19031 Statut Modérateur -
Bonjour,

J'ai une matrice stockée dans un fichier, j'aimerais afficher des cases de différentes couleurs en fonction de chaque coefficient de celle-ci (lire le fichier n'est pas du tout un problème, c'est l'ouverture d'une fenêtre graphique et l'affichage que je ne sais pas faire). Comment puis-je faire ça en java ? Vers quelle bibliothèque/classe ou objet dois-je me tourner ?

Je précise que je n'ai jamais de graphisme en Java excepté des Canvas.

Merci d'avance.

Configuration: Android / Chrome 72.0.3626.105

1 réponse

  1. KX Messages postés 19031 Statut Modérateur 3 020
     
    Bonjour,

    Voici un exemple, très simple (et donc très moche), ça te fera peut-être avancer un peu.
    import java.awt.*;
    import javax.swing.*;
    
    public class Main {
        public static void main(String[] args) {
            int nbRows = 3, nbCols = 4;
            int[][] matrix = { { 1, 2, 3, 4 }, { 5, 6, 7, 8 }, { 9, 10, 11, 12 } };
    
            JFrame frame = new JFrame();
            GridLayout grid = new GridLayout(nbRows, nbCols);
            frame.setLayout(grid);
    
            for (int row = 0; row < nbRows; row++) {
                for (int col = 0; col < nbCols; col++) {
                    int value = matrix[row][col];
                    int red = 20 * value, green = 255 - red, blue = 0;
    
                    JLabel label = new JLabel(String.valueOf(value), JLabel.CENTER);
                    label.setOpaque(true);
                    label.setBackground(new Color(red, green, blue));
                    frame.add(label);
                }
            }
    
            frame.pack();
            frame.setLocationRelativeTo(null);
            frame.setVisible(true);
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        }
    }
    0