Advertisement
Guest User

Untitled

a guest
Apr 28th, 2017
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 5.99 KB | None | 0 0
  1. import java.awt.GridLayout;
  2. import javax.swing.JButton;
  3. import javax.swing.JFrame;
  4. import javax.swing.JLabel;
  5.  
  6.  import javax.swing.JTextField;
  7. import javax.swing.JFormattedTextField;
  8. import javax.swing.text.NumberFormatter;
  9. import java.text.NumberFormat;
  10.  
  11.  
  12. import java.awt.event.ActionEvent;
  13. import java.awt.event.ActionListener;
  14.  
  15. import javax.swing.JComboBox;
  16.  
  17. import java.util.ArrayList;
  18.  
  19. import java.awt.GridBagConstraints;
  20. import java.awt.GridBagLayout;
  21.  
  22. import java.awt.Dimension;
  23. import javax.swing.JPanel;
  24.  
  25. import javax.swing.JTextArea;
  26.  
  27. import java.awt.Insets;
  28.  
  29. public class Fenetre extends JFrame{
  30.     int nbJoueurs = 0;
  31.     int nbProducteurs = 1;
  32.     ArrayList<String> tabJoueurs;
  33.  
  34.     public Fenetre(){
  35.         JPanel content = new JPanel();
  36.         tabJoueurs = new ArrayList<String>();
  37.  
  38.         this.setTitle("Age of Agents");
  39.         this.setSize(700, 100);
  40.         this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  41.         this.setLocationRelativeTo(null);
  42.         NumberFormat format = NumberFormat.getInstance();
  43.         NumberFormatter formatter = new NumberFormatter(format);
  44.         formatter.setValueClass(Integer.class);
  45.         formatter.setMinimum(0);
  46.         formatter.setMaximum(Integer.MAX_VALUE);
  47.         formatter.setAllowsInvalid(false);
  48.        
  49.         final JFormattedTextField FormatterProducteurs = new JFormattedTextField(formatter);
  50.         FormatterProducteurs.setValue(1);
  51.  
  52.         String[] comportements = {"Coopératif", "Individualiste", "Voleur", "Humain"};
  53.         final JComboBox<String> comboxJoueur= new JComboBox<>(comportements);
  54.         //comboxJoueur.setSelectedIndex(4);
  55.  
  56.         final JFormattedTextField FormatterOr = new JFormattedTextField(formatter);
  57.         final JFormattedTextField FormatterBois = new JFormattedTextField(formatter);
  58.         final JFormattedTextField FormatterArgent = new JFormattedTextField(formatter);
  59.         JButton BoutonAdd = new JButton("Ajouter joueur");
  60.         JButton BoutonStart = new JButton("Lancer le jeu");
  61.         JButton BoutonReset = new JButton("Reset valeurs");
  62.        
  63.        
  64.        
  65.         final JTextArea textArea = new JTextArea();
  66.  
  67.         //content.setPreferredSize(new Dimension(300, 120));
  68.        
  69.         content.setLayout(new GridBagLayout());
  70.        
  71.  
  72.         GridBagConstraints gc = new GridBagConstraints();
  73.         // Première ligne
  74.         gc.gridx=0;
  75.         gc.gridy=0;
  76.         gc.anchor = GridBagConstraints.LINE_START;
  77.         content.add(new JLabel("Ajouter un joueur : "),gc);
  78.         gc.gridx=1;
  79.         gc.gridy=0;
  80.         gc.anchor = GridBagConstraints.CENTER;
  81.         content.add(comboxJoueur,gc);
  82.         gc.gridx=2;
  83.         gc.gridy=0;
  84.         content.add(BoutonAdd,gc);
  85.         gc.gridx=3;
  86.         gc.gridy=0;
  87.         gc.gridwidth = GridBagConstraints.REMAINDER;
  88.         content.add(textArea,gc);
  89.  
  90.         // Deuxième ligne
  91.         gc.gridx=0;
  92.         gc.gridy=1;
  93.         gc.anchor = GridBagConstraints.LINE_START;
  94.         content.add(new JLabel("Nombre producteurs : "),gc);
  95.         gc.gridx=1;
  96.         gc.gridy=1;
  97.         gc.gridwidth = GridBagConstraints.REMAINDER;
  98.         content.add(FormatterProducteurs,gc);
  99.         // Troisième ligne
  100.         gc.gridx=0;
  101.         gc.gridy=2;
  102.         gc.anchor = GridBagConstraints.LINE_START;
  103.         content.add(new JLabel("Or initial : "),gc);
  104.         gc.gridx=1;
  105.         gc.gridy=2;
  106.         gc.gridwidth = 2;
  107.         //gc.gridwidth = GridBagConstraints.REMAINDER;
  108.         content.add(FormatterOr,gc);
  109.  
  110. /*
  111.  
  112.         // Quatrième ligne
  113.         gc.gridx=0;
  114.         gc.gridx=3;
  115.         content.add(new JLabel("Nombre de ressources de bois : "));
  116.         gc.gridx=1;
  117.         gc.gridx=3;
  118.         content.add(FormatterBois);
  119.  
  120.         // Cinquième ligne
  121.         gc.gridx=0;
  122.         gc.gridx=4;
  123.         content.add(new JLabel("Nombre de ressources d'argent : "));
  124.         gc.gridx=1;
  125.         gc.gridx=4;
  126.         content.add(FormatterArgent);
  127.         */
  128.  
  129.         //On ajoute le bouton au content pane de la JFrame
  130. /*
  131.         this.getContentPane().add(comboxJoueur);
  132.         this.getContentPane().add(BoutonAdd);
  133.         this.getContentPane().add(new JLabel("Nombre de producteurs"));
  134.         this.getContentPane().add(FormatterProducteurs);
  135.         this.getContentPane().add(new JLabel(""));
  136.  
  137.         this.getContentPane().add(new JLabel("Nombre de ressources d'or"));
  138.         this.getContentPane().add(FormatterOr);
  139.         this.getContentPane().add(new JLabel(""));
  140.         this.getContentPane().add(new JLabel("Nombre de ressources de bois"));
  141.         this.getContentPane().add(FormatterBois);
  142.         this.getContentPane().add(new JLabel(""));
  143.         this.getContentPane().add(new JLabel("Nombre de ressources d'argent"));
  144.         this.getContentPane().add(FormatterArgent);
  145.         this.getContentPane().add(new JLabel(""));
  146.         this.getContentPane().add(BoutonStart);
  147.         this.getContentPane().add(BoutonReset);
  148.         this.getContentPane().add(new JLabel(""));
  149. */
  150.  
  151.         BoutonStart.addActionListener(new ActionListener() {
  152.             public void actionPerformed(ActionEvent e) {
  153.                 nbJoueurs = getJoueurs();
  154.                 nbProducteurs = (Integer) FormatterProducteurs.getValue();
  155.                 afficherJoueurs();
  156.             }
  157.         });
  158.  
  159.         BoutonReset.addActionListener(new ActionListener() {
  160.             public void actionPerformed(ActionEvent e) {
  161.                 setJoueurs(0);
  162.                 setProducteurs(1);
  163.                 FormatterProducteurs.setValue(1);
  164.                 tabJoueurs.clear();
  165.             }
  166.         });
  167.  
  168.         BoutonAdd.addActionListener(new ActionListener() {
  169.             public void actionPerformed(ActionEvent e) {
  170.                 String comport = (String) comboxJoueur.getSelectedItem();
  171.                 tabJoueurs.add(comport);
  172.                 setJoueurs(getJoueurs()+1);
  173.                 textArea.setText("");
  174.                 textArea.append("Nombre de joueurs : "+nbJoueurs+"\n");
  175.                 int i=0;
  176.                 while(i<tabJoueurs.size())
  177.                 {
  178.                     textArea.append("Joueur "+i+" "+tabJoueurs.get(i)+"\n");
  179.                     i++;
  180.                 }
  181.             }
  182.         });
  183.  
  184.  
  185.         this.setContentPane(content);
  186.         this.setVisible(true);
  187.     }
  188.  
  189.     public void afficherJoueurs(){
  190.         System.out.println("Nombre de joueurs : "+nbJoueurs);
  191.         int i=0;
  192.         while(i<tabJoueurs.size())
  193.         {
  194.             System.out.println("Joueur "+i+" "+tabJoueurs.get(i));
  195.             i++;
  196.         }
  197.     }
  198.  
  199.     public void afficherProducteurs(){
  200.         System.out.println("Nombre de joueurs : "+nbJoueurs);
  201.     }
  202.  
  203.     public void setJoueurs(int nbJoueurs){
  204.         this.nbJoueurs=nbJoueurs;
  205.     }
  206.  
  207.     public int getJoueurs(){
  208.         return nbJoueurs;
  209.     }
  210.  
  211.     public void setProducteurs(int nbProducteurs){
  212.         this.nbProducteurs=nbProducteurs;
  213.     }
  214.  
  215.     public int getProducteurs(){
  216.         return nbProducteurs;
  217.     }
  218. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement