Interface java

Jana22 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -  
Jana22 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

je suis en train de faire un projet sur un détecteur de langue et il me faut juste l'interface pour que l'utilisateur puisse entrer une phrase et appuyer sur le bouton pour déclencher le détecteur. J'ai reçu quelques instructions pour faire réagir l'interface avec les méthodes importantes mais comme je suis débutante je ne me débrouille pas très bien en java!!!

est-ce que quelqu'un pourrait m'aider en rajoutant dans mon code ce qu'il manque? j'ai tout essayé mais ça marche pas!!!
A voir également:

2 réponses

KX Messages postés 16761 Date d'inscription   Statut Modérateur Dernière intervention   3 020
 
Fais voir ton code, mais si tu as juste besoin d'une entrée clavier, la console suffit, pas besoin d'une interface graphique pour ça...
0
Jana22 Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
ça suffit pas si je montre le code...faut que tu puisses voir 2 méthodes entièrement!

une partie de la classe DevineurDeLangue:


public Prepare () {
DevineurDeLangue d=new DevineurDeLangue();
d.NGramList.lireDico("en_mots.txt", d.NGramList.en);
d.NGramList.lireDico("es_mots.txt", d.NGramList.es);
d.NGramList.lireDico("fr_mots.txt", d.NGramList.fr);
d.NGramList.lireDico("al_mots.txt", d.NGramList.al);
d.NGramList. lireDico("it_mots.txt", d.NGramList.it);

// en.printMap();
d.NGramList.lireCorpus("corpus_en.txt",d.NGramList.en);
d.NGramList.lireCorpus("corpus_es.txt",d.NGramList.es);
d.NGramList.lireCorpus("corpus_fr.txt",d.NGramList.fr);
d.NGramList.lireCorpus("corpus_al.txt",d.NGramList.al);
d.NGramList.lireCorpus("corpus_it.txt",d.NGramList.it);
//d.NGramList.en.printMap();
d.phr="dovresti andare in palestra mi sa che hai preso qualche chilo";

d.ProbPhrase(String phrase);

classe Interface:

package DetLangue;

import java.awt.BorderLayout;
import java.awt.event.*;

import javax.swing.*;
import javax.swing.*;

public class Interface {


public static void main (String [] ssd){
DevineurDeLangue d = new DevineurDeLangue(); //
public String reponse;

JFrame frame = new JFrame("Détecteur de langue");
JTextField label = new JTextField("Détecteur de langue");
JButton b= new JButton("détecter");
JButton p=new JButton ("p");



b.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
phrase = champPhrase.getText();
reponse = d.ProbPhrase(phrase); // méthode appelée lorsque le bouton d est cliqué
label.setText(reponse); // affichage du résultat de la détection
}
});


b.setSize(10,20);
JTextArea champPhrase=new JTextArea();
champPhrase.setSize(20, 30);

JPanel panel=new JPanel(new BorderLayout());
JPanel panel1=new JPanel(new BorderLayout());
panel.add(label, BorderLayout.NORTH);
panel1.add(champPhrase,BorderLayout.NORTH);
panel1.add(b, BorderLayout.SOUTH);
panel.add(panel1, BorderLayout.SOUTH);
JComponent newContentPane=panel;

frame.setContentPane(newContentPane);

frame.setSize(300, 100);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.pack();

}

}

les instructions pour faire:

1) dans la classe "DevineurDeLangue"
- changer la méthode static "Main" par une méthode d'instance "public Preparer()" qui reprend les 10 instructions "lireDico" et "lireCorpus"
- modifier légèrement "ProbPhrase" en lui ajoutant un paramètre "String phrase" (la phrase dont il doit deviner la langue) et retourne un String qui contient tout ce que vous afficher actuellement avec "System.out.println"

2) dans la classe "Interface"
- déclarer et instancier un objet "DevineurDeLangue d = new DevineurDeLangue"
- déclarer "String reponse" (string qui va recevoir la réponse de "ProbPhrase")

- ajouter un écouteur sur le bouton "b" . On peut le faire de la manière suivante (sans avoir à créer une classe supplémentaire)

b.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
phrase = champPhrase.getText();
reponse = d.ProbPhrase(phrase); // méthode appelée lorsque le bouton d est cliqué
label.setText(reponse); // affichage du résultat de la détection
}
});

- ajouter un bouton p (avec un écouteur qui va appeler "d.Preparer()"), c'est-à-dire qui va servir à préparer les n-grammes à partir des dico et des corpus
0