Flux rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

Java programmation evenementielle

otis182, le vendredi 26 novembre 2004 à 17:55:32
Bonjour à tous !
Voila, je suis en pleine réalisation d'un simulateur de péage en Java.
J'ai un probleme : j'au créé un item dans le menu 'Fichier' que j'ai nommé 'Démarrer'.
L'évènement que j'aimerais lier serait le suivant :
suite a un clic de souris sur démarrer, une zone de texte apparait dans ma fenetre avec le texte 'usager détecté.
Remarque, on peut utiliser aussi un Label mais je début en Java et je n'ai pas encore trouvé s'il existe et comment on utilisait cet objet !
voila mon code a l'heure actuelle :
import java.awt.*;
import java.awt.event.*;

/**
* Sample application using Frame.
*
* @author
* @version 1.00 04/11/26
*/
public class PeageFrame extends Frame {

/**
* The constructor.
*/
public PeageFrame() {

MenuBar menuBar = new MenuBar();
Menu menuFile = new Menu();
MenuItem menuFileExit = new MenuItem();

menuFile.setLabel("Fichier");
menuFileExit.setLabel("Quitter");

menuFile.add(new MenuItem("Demarrer")); //création de l'item demarrer

// Add action listener.for the menu button
menuFileExit.addActionListener
(
new ActionListener() {
public void actionPerformed(ActionEvent e) {
PeageFrame.this.windowClosed();
}
}
);

// Ajout d'un action listener pour demmarer
menuFile.addActionListener
(
new ActionListener() {
public void actionPerformed(ActionEvent e2){
TextArea t = new TextArea("Usager détecté",5,50); //création d'une zone de texte

}
}
);

menuFile.add(menuFileExit);
menuBar.add(menuFile);

setTitle("SimulPeage");
setMenuBar(menuBar);
setSize(new Dimension(400, 400));

// Add window listener.
this.addWindowListener
(
new WindowAdapter() {
public void windowClosing(WindowEvent e) {
PeageFrame.this.windowClosed();
}
}
);
}


/**
* Shutdown procedure when run as an application.
*/
protected void windowClosed() {

// TODO: Check if it is safe to close the application

// Exit application.
System.exit(0);
}
}


Ce code ne génère aucune erreur a la construction mais n'affiche pas le texte souhaité.

Merci de votre compréhension et de votre aide.

GrEG
Répondre à otis182  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
philtrain, le vendredi 26 novembre 2004 à 20:01:29
Bonjour,

Voici ton programme avec le Label souhaité

Pour la doc:
http://www.java.sun.com


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

public class PeageFrame extends Frame {

/**
* The constructor.
*/
public PeageFrame() {

MenuBar menuBar = new MenuBar();
Menu menuFile = new Menu();
MenuItem menuFileExit = new MenuItem();

menuFile.setLabel("Fichier");
menuFileExit.setLabel("Quitter");

menuFile.add(new MenuItem("Demarrer")); //création de l'item demarrer

// Add action listener.for the menu button
menuFileExit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
PeageFrame.this.windowClosed();
}
});
final Label label = new Label("");
this.add(label);

// Ajout d'un action listener pour demmarer
menuFile.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e2){
// TextArea t = new TextArea("Usager détecté",5,50); //création d'une zone de texte
label.setText("Usager détécté");

}
});

menuFile.add(menuFileExit);
menuBar.add(menuFile);

setTitle("SimulPeage");
setMenuBar(menuBar);
setSize(new Dimension(400, 400));
setVisible(true);

// Add window listener.
this.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
PeageFrame.this.windowClosed();
}
});
}


/**
* Shutdown procedure when run as an application.
*/
protected void windowClosed() {

// TODO: Check if it is safe to close the application

// Exit application.
System.exit(0);
}

public static void main (String [] args) {
new PeageFrame();
}
}


a+
Répondre à philtrain

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
shakiralmusawi, le vendredi 26 novembre 2004 à 20:35:18
donald
Répondre à shakiralmusawi

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
otis182, le samedi 27 novembre 2004 à 12:13:13
Merci beaucoup!
J'ai voulu rajouter 3 autres labels (JLabel de javax.swing) et a l'écran il n'apparait que le dernier créé et ajouté .
Je pense qu'en fait lorsque j'ajoute tous les labels sont superposés donc je ne vois ke le dernier.
Comment faire pour les afficher les uns en dessous des autres ?
J'ai testé BorderLayout avec un JPanel mais ca ma créé plus d'erreur qu'autre chose !!
merci!

PS : Donald, wé bof moi je préfère Dingo ! lol
Répondre à otis182

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
philtrain, le samedi 27 novembre 2004 à 12:57:39
Bonjour,

tu peux utiliser :
- un GridLayout :

JPanel panel = new JPanel(new GridLayout(3, 1, 5, 5));
panel.add(label1);
panel.add(label2);
panel.add(label3);

ou plus compliqué quand on débute, un gridbaglayout

De toute façon, n'oublie pas de consulter la documentation pour les classes que tu utilises : http://java.sun.com/docs/index.html

Un autre lien intéressant pour apprendre:
http://java.sun.com/docs/books/tutorial/index.html

bon amusement

a+
Répondre à philtrain

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
otis182, le samedi 27 novembre 2004 à 17:34:01
Merci pour vos conseils !
Oui le gridLayout fonctionne merci .
J'utilise en parralele a mon code la documentation sur le JDK mais ya tellement d'informations que parfois je en trouve pas ce que je cherche.
D'ou encore une question désolé :
après avoir cherché dans la documentation, j'ai voulu :
- ajouter un couleur de fond a un de mes labels par la fonction setColorBackground(Color.blue);
Mais cela n'a aucun n'effet sur l'affichage !!
Comment faire ?? Je vous colle mon code :

import java.awt.*;
import java.awt.event.*;
import java.awt.color.*;
import javax.swing.*;

public class ProjPeage extends JFrame {

/////// Déclaration de variables

JLabel Lbl_borne = new JLabel ("Etat Borne : en attente");
JLabel Lbl_barriere = new JLabel ("Etat Barriere : baissée");
JLabel Lbl_feu = new JLabel ("Etat Feu : Rouge");
JButton B_DemandeRecu = new JButton("Demande de recu");
JButton B_Payer = new JButton("Payer");
JButton B_Telepeage = new JButton("Telepeage");
JLabel Lbl_afficheur= new JLabel ("Montant = 5 €");

////// Constructeur
public ProjPeage() {

GridLayout pos = new GridLayout(4,2); // création d'une grille de positionnement
MenuBar menuBar = new MenuBar();
Menu menuFile = new Menu();
MenuItem menuFileExit = new MenuItem();

menuFile.setLabel("Fichier");
menuFileExit.setLabel("Quitter");

menuFile.add(new MenuItem("Demarrer")); //création de l'item demarrer


setLayout(pos);



// Add action listener.for the menu button
menuFileExit.addActionListener
(
new ActionListener() {
public void actionPerformed(ActionEvent e) {
ProjPeage.this.windowClosed();
}
}
);

final Label Detecteur = new Label("");
this.add(Detecteur);

// Ajout d'un action listener pour demmarer
menuFile.addActionListener
(
new ActionListener() {
public void actionPerformed(ActionEvent e2){
//JLabel Detecteur = new JLabel("Usager détecté"); //création d'une zone de texte
Detecteur.setText("Etat Detecteur : Usager détecté\n");
}
}
);

menuFile.add(menuFileExit);
menuBar.add(menuFile);

setTitle("SimulPeage");
setMenuBar(menuBar);
setSize(new Dimension(400, 400));

// Add window listener.
this.addWindowListener
(
new WindowAdapter() {
public void windowClosing(WindowEvent e) {
ProjPeage.this.windowClosed();
}
}
);

//choix d'une couleur de fond
Lbl_afficheur.setBackground(Color.blue);


//rendre visible
Lbl_borne.setVisible(true);
Lbl_barriere.setVisible(true);
Lbl_feu.setVisible(true);
Lbl_afficheur.setVisible(true);

//ajouter a la fenetre
this.add(Lbl_afficheur);
this.add(Lbl_borne);
this.add(B_DemandeRecu);
this.add(Lbl_barriere);
this.add(B_Payer);
this.add(Lbl_feu);
this.add(B_Telepeage);



}
////////////////////Fin du constructeur


/**
* Procedure de fin d'application
*/
protected void windowClosed() {

// TODO: Check if it is safe to close the application

// Exit application.
System.exit(0);
}

///////////////////////// classe BORNE
public class Borne {
public int montantAPayer = 5; //montant a payer initialisé a 5 euros
public int recu; //prend les valeurs 0,1,2
public String etatborne;//etat de la borne
public int numT ;//numero de la transaction

public int MiseAJour(int x) {
montantAPayer = x;
return montantAPayer;
}
public void Afficher() {
Lbl_afficheur.setText(Integer.toString(montantAPayer));
}

public void DemanderRecu() {
recu=1;
B_DemandeRecu.addActionListener
(
new ActionListener() {
public void actionPerformed(ActionEvent e){
JFrame F_DemandeRecu = new JFrame("Recu");
F_DemandeRecu.setVisible(true);

}
}
);
}




}
public static void main(String[] args) {
// Create application frame.
JFrame frame = new ProjPeage();

// Show frame
frame.setVisible(true);


}
}
Répondre à otis182

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 Matt, le vendredi 8 décembre 2006 à 12:40:27
Salut, si tu a finis ce travail de simulateur, sa m'aiderai beaucoup de le voir car j en realise un egalément... Merci
Répondre à Matt
Cours d'evenemetielle en java (Résolu)Bonjour tous le monde , s'il vous plais je viens de commencer le module de la programmation evenementielle avec java et j'ai besoin d'un cours detaillee pour que je puisse faire un bon commencement et merci d'avance. www.commentcamarche.net/forum/affich-6201449-cours-d-evenemetielle-en-java
[java] installer logiciel ecrit avec java (Résolu)bonjour j'ai un logiciel ecrit en java, mais je sais pas comment l'installer ou l'ouvrir , parcequ il n ya pas de fichier exe, il y un fichier .bat et des dossiers ( java , programme...ect) contenant des fichiers java. je travaille sous... www.commentcamarche.net/forum/affich-2096290-java-installer-logiciel-ecrit-avec-java
Evenementielle (Résolu)Bonjour, la programmation evenementielle aider moi j veux des execices corrigés svp ou des cours simple à comprendre merci infiniment www.commentcamarche.net/forum/affich-7503670-evenementielle
Java Runtime MachineJava Runtime Machine Certains sites internet mais aussi certains programmes requièrent la présence de la Java Runtime Machine (JRM) pour exécuter les applets Java. Si vous n'avez pas, ou plus, cette Java Runtime Machine,... www.commentcamarche.net/faq/sujet-640-java-runtime-machine
[mythe] JavaScript c'est la même chose que Javamythe Javascript est le même langage que Java Réalité FAUX Explications Ces deux langages existent bien, et ce sont tous les deux des langages de programmation (moins poussée pour le JavaScript), mais ce ne sont pas les mêmes... www.commentcamarche.net/faq/sujet-4614-mythe-javascript-c-est-la-meme-chose-que-java
[java] programme defaillant (Résolu)Bonjour, Le but du programme est de trouver le nombre aléatoire .Le programme se compile et fonctionne à moitié :/ -premiere erreur mon exception ne fonctionne pas. -seconde mon nombre de coups est faut : toujours égal à 0. -troisième mon numéro... www.commentcamarche.net/forum/affich-4613617-java-programme-defaillant
Programmation evenementielle (Résolu)Bonjour, je vx qqun qui px m aider par des cours en pogrammation evenementiel et prkoi pas des exercices corrigés merci d avance www.commentcamarche.net/forum/affich-7457533-programmation-evenementielle
Programmation sur téléphone portable (Résolu)Bonjour à tous, Je voudrais savoir si il est possible de créer des programmes pouvant tourner sur téléphone portable. Et si oui quel langage pourrait on utiliser ? merci d'avance. www.commentcamarche.net/forum/affich-2749141-programmation-sur-telephone-portable
Java - Structures conditionnelles On appelle structure conditonnelle les instructions qui permettent de tester si une condition est vraie ou non. Ces structures conditionnelles peuvent être associées à des structures qui se répètent suivant la réalisation de la condition, on appelle... www.commentcamarche.net/java/javacond.php3
Introduction à la programmation orientée objet Extrait de « Au coeur de ActiveX et OLE », de David Chappel "Au cours des 35 dernières années, les concepteurs de matériel informatique sont passés de machines de la taille d'un hangar à des ordinateurs portables légers basés sur de minuscules... www.commentcamarche.net/poo/poointro.php3
Java - Les packages La programmation Java consiste à créer des classes. Or, étant donné qu'un programme est généralement développé par une équipe de programmeurs, c'est-à-dire plusieurs personnes, le fait de concaténer (mettre bout à bout) des classes dans un fichier... www.commentcamarche.net/java/javapack.php3
Toutes les réponses pour « Java programmation evenementielle »