Java
flo2704
-
flo2704 -
flo2704 -
Bonsoir à tous, je suis occupé de programmer un Master Mind en Java mais je reste bloqué sur quelques points. J'ai déjà réalisé toute l'interface graphique etc. Mais je n'arrive pas à générer la combinaison choisie par l'ordinateur et la vérification de la combinaison entrée par l'utilisateur par rapport à celle choisie par l'ordinateur. Tout coup de pouce et conseil est bienvenu. Merci d'avance.
A voir également:
- Java
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick java football - Télécharger - Jeux vidéo
- Waptrick java voiture - Télécharger - Jeux vidéo
- Java apk - Télécharger - Langages
- Eclipse java - Télécharger - Langages
2 réponses
Il va falloir être un peu plus concret dans tes attentes, parce que tu as pu commencer de 1000 manières différentes !
flo2704
Ben je veux bien envoyer le code que j'ai, mais c'est les méthodes qui me manque en faite...
KX
Messages postés
19031
Statut
Modérateur
3 020
Il s'agit surtout de structure de données, de la manière dont tu as vu ton projet, par exemple pour générer une combinaison, il faudrait déjà savoir ce qu'est pour toi une combinaison (etc...)
flo2704
La combinaison c'est un suite de 4 couleurs parmi un choix de 7 couleurs déjà créées et ce qu'il me faudrait c'est la méthode qui permet de créer la combinaison de 4 couleurs aléatoirement. Je sais que c'est grâce à Math.random mais je ne sais pas comment l'intégrer =/ Merci d'avance :)
KX
Messages postés
19031
Statut
Modérateur
3 020
Math.random est une méthode un peu limitée, tu peux directement utiliser un objet de la classe Random
flo2704
Ha super un grand merci :)
Il ne faut pas ajouter plusieurs fois le même objet, getContentPane().add(jp) et this.add(jp), c'est pareil, du coup ça pose problème. De même, tu as deux frame : this, et jf... ça fait un peu désordre. Enfin le pack va rentrer en conflit avec les setSize, qui eux même vont rentrer en conflit avec les layout, donc il ne faut pas trop en faire...
public class Appli extends JFrame
{
private final Dessin d;
private final JButton jb1;
public Appli()
{
super("MasterMind");
setSize(600,300);
d = new Dessin(4,6);
add(d,BorderLayout.NORTH);
jb1 = new JButton("Check");
add(jb1,BorderLayout.SOUTH);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
}
public static void main(String[] args)
{
new Appli();
}
}
Ha oui merci mais quand j'agrandis ma fenêtre il y a un emplacement blanc ...
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Appli extends JFrame
{
private Dessin d;// JPanel
private JFrame jf;// JFrame
public Appli()
{
d = new Dessin(4,6);
setPreferredSize(new Dimension(600,300));
jf = new JFrame ("MasterMind");
JPanel jp = new JPanel();
d.setLayout(new BorderLayout());
d.add(new Button ("Check"),BorderLayout.SOUTH);
jf.setContentPane(d);
jf.setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.pack();
}
public static void main(String[] arg)
{
new Appli();
}
}
Donc si je vais comme ça c'est correct non ? Vu qu'il n'y a plus d'emplacement blanc en dessous ? :)
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class Appli extends JFrame
{
private Dessin d;// JPanel
private JFrame jf;// JFrame
public Appli()
{
d = new Dessin(4,6);
setPreferredSize(new Dimension(600,300));
jf = new JFrame ("MasterMind");
JPanel jp = new JPanel();
d.setLayout(new BorderLayout());
d.add(new Button ("Check"),BorderLayout.SOUTH);
jf.setContentPane(d);
jf.setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
jf.pack();
}
public static void main(String[] arg)
{
new Appli();
}
}
Donc si je vais comme ça c'est correct non ? Vu qu'il n'y a plus d'emplacement blanc en dessous ? :)
Tu as toujours tes deux JFrame ici, la première qui est ta classe extends JFrame, et la deuxième jf que tu déclares à l'intérieur du code, as-tu vraiment besoin des deux ?
Tu peux tester : new Appli().setVisible(true); pour bien voir que tu n'en as pas qu'une de créée...
Après si visuellement ça donne ce que tu veux tant mieux, moi perso, je n'ai pas la classe Dessin, mon test ne donne donc pas grand chose...
Remarque : jp ne sert à rien !
Tu peux tester : new Appli().setVisible(true); pour bien voir que tu n'en as pas qu'une de créée...
Après si visuellement ça donne ce que tu veux tant mieux, moi perso, je n'ai pas la classe Dessin, mon test ne donne donc pas grand chose...
Remarque : jp ne sert à rien !