diff --git a/Implementation/src/View.java b/Implementation/src/View.java index 5a0088a..7a807a0 100644 --- a/Implementation/src/View.java +++ b/Implementation/src/View.java @@ -1,3 +1,84 @@ -public class View{ +import java.awt.GridLayout; + +import javax.swing.JButton; +import javax.swing.JFrame; +import javax.swing.JLabel; +import javax.swing.JMenu; +import javax.swing.JMenuBar; +import javax.swing.JMenuItem; +import javax.swing.JPanel; +import javax.swing.JScrollPane; +import javax.swing.JTable; + +public class View extends JFrame { + + public View() { + //créer une instance JFrame + super("ChatApp-AL-NM"); + + // creation d'un label qui contiendra un txt au centre + JLabel label = new JLabel("Bonjour, Entrez un nom d'utilisateur!", JLabel.CENTER); + + // Définissez le panel (conteneur de différents composants) + JPanel panel = new JPanel(); + // Définir le bouton + JButton btn1 = new JButton("Connexion"); + // Ajouter le bouton au frame + panel.add(btn1); + + + + /*****************************/ + //L'en-têtes du JTable + String[] column = {"Pseudo", "port", "IP", "ID"}; + + //Les lignes du JTable + String[][] data = { + {"Auriane", "3000", "MBP-de-Auriane/192.168.1.43 ", "MBP-de-Auriane"}, + {"Nabil", "4000", "LAPTOP-1JO2SHBG/192.168.1.72", "LAPTOP-1JO2SHBG"} + }; + // Créer le JTable + JTable table = new JTable(data, column); + JScrollPane scroll = new JScrollPane(table); + // Ajout de la JTable + this.add(scroll); + + + + // Définir le menu principal + JMenuBar menu = new JMenuBar(); + JMenu pseudo= new JMenu("Modifier Pseudo"); + JMenu clavardage = new JMenu("Clavardage"); + JMenu deconnexion = new JMenu("Deconnexion"); + // Définir le sous-menu pour Clavardage + JMenuItem actifs = new JMenuItem("Connaitre utilisateur actifs"); + JMenuItem session = new JMenuItem("Demarrer session"); + + clavardage.add(actifs); + clavardage.add(session); + + menu.add(pseudo); + menu.add(clavardage); + menu.add(deconnexion); + + + // Ajouter label, menu et panel au frame + this.setLayout(new GridLayout(8, 1)); + this.add(menu); + this.add(label); + this.add(panel); + + // fixer les dimensions de la fenêtre + this.pack(); + this.setSize(500, 500); + //sortir quand l’utilisateur ferme le frame + this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); + // rendre la fenêtre visible : + this.setVisible(true); + } + + public static void main (String[] args) { + JFrame frame = new View(); + } }