Fenêtre jeux du pendu
skyllers
Messages postés
28
Date d'inscription
Statut
Membre
Dernière intervention
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour à tous,
J'essaye de créer un jeux du pendu en java mais je n'arrive pas à afficher ma class principale dans une fenêtre, mon code:
Ma fenêtre:
Mon jeux:
Merci pour l'aide les amis ; )
J'essaye de créer un jeux du pendu en java mais je n'arrive pas à afficher ma class principale dans une fenêtre, mon code:
Ma fenêtre:
import javax.swing.JFrame; public class Fenetre extends JFrame { public Fenetre(){ this.setTitle("Ma première fenêtre Java"); this.setSize(400, 500); this.setLocationRelativeTo(null); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setVisible(true); } }
Mon jeux:
import java.util.Scanner; public class Jeudupendu { Fenetre fen = new Fenetre(); /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub char mot[] = {'i','n','s','t','r','u','m','e','n','t'}; char mot2[] = new char[mot.length]; char caractere = ' '; Scanner lettre = new Scanner(System.in); while (mot2[0] != mot[0] || mot2[1] != mot[1] || mot2[2] != mot[2] || mot2[3] != mot[3] || mot2[4] != mot[4] || mot2[5] != mot[5] || mot2[6] != mot[6] || mot2[7] != mot[7] || mot2[8] != mot[8] || mot2[9] != mot[9]) { System.out.println("Entrez une lettre:"); caractere = lettre.next().charAt(0); for (int i=0;i < mot.length;i++) { if (caractere == mot[i]) { System.out.println(mot[i]); mot2[i] = mot[i]; } else { System.out.println("*"); } } } System.out.println("bravo! Le mot était: " + mot2[0] + mot2[1] + mot2[2] + mot2[3] + mot2[4] + mot2[5] + mot2[6] + mot2[7] + mot2[8] + mot2[9]); } }
Merci pour l'aide les amis ; )
A voir également:
- Fenêtre jeux du pendu
- Jeux java itel - Télécharger - Jeux vidéo
- Waptrick jeux - Télécharger - Jeux vidéo
- Jeux du pendu - Télécharger - Vie quotidienne
- Jeux zuma - Télécharger - Jeux vidéo
- Jeux java football - Télécharger - Jeux vidéo
1 réponse
Bonjour,
Déjà tu peux pas vraiment utiliser System.out.println(); et Scanner(System.in); dans une JFrame.... regarde du cote de JTextArea/JLabel pour afficher le texte, et JTextField pour entrer du texte...
Ensuite ton code est très compliqué... le code ne fonctionne que pour des mots ayant une certaine taille...
Je l'ai modifié pour que ça ressemble plus à un vrai pendu en le simplifiant... je te laisse faire l'adaptation pour ta JFrame...
import java.util.LinkedList; import java.util.List; import java.util.Scanner; public class Jeudupendu { static Fenetre fen; public static int occurence_mot(char c, String mot){ int occurence = 0; for(char c2 : mot.toCharArray()){ if(c == c2) occurence++; } return occurence; } public static void main(String[] args) { init(); } public static void init(){ fen = new Fenetre(); String mot = "instrument"; List<Character> lettres_tappees = new LinkedList<Character>(); Scanner lettre = new Scanner(System.in); int letters_found = 0; int vies = 10; while (letters_found != mot.length()) { System.out.println("Entrez une lettre: (vies restantes: " + vies + ")"); char caractere = lettre.next().charAt(0); if(lettres_tappees.contains(caractere)){ System.out.println("Vous avez deja tappé cette lettre..."); } else { lettres_tappees.add(caractere); if(mot.contains(caractere + "")){ letters_found = letters_found + occurence_mot(caractere, mot); } else { if(vies == 0){ break; } else { vies--; } } String to_print = ""; for(char c : mot.toCharArray()){ if(lettres_tappees.contains(c)){ to_print = to_print + c; } else { to_print = to_print + "*"; } } System.out.println(to_print); } System.out.println(); } if(letters_found == mot.length()) System.out.println("Bravo! Le mot était: '" + mot + "'"); else System.err.println("Vous avez perdu !"); lettre.close(); } }
En éspérant avoir aider :)