IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Java Discussion :

Probleme MAIN apres factoring package


Sujet :

Java

  1. #1
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2012
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 277
    Points : 126
    Points
    126
    Par défaut Probleme MAIN apres factoring package
    Bonjour,

    Je suis face à un petit probleme que je ne comprends pas, pouvez vous me dire ce qui se passe et comment le résoudre :

    J'ai établi un programme JAVA, j'ai voulu renommer en factoring un nom de package dans lequel une class contenant une méthode MAIN.

    J'ai eu une alerte à ce moment me disant que certaines fonctionnalités ne pourraient plus fonctionner.

    J'ai cliqué sur continuer.

    Et là ça ne marche plus, pourtant mon code est inchangé.

    Pouvez vous m'expliquer .

  2. #2
    Membre habitué
    Profil pro
    Opération
    Inscrit en
    Décembre 2012
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Opération

    Informations forums :
    Inscription : Décembre 2012
    Messages : 91
    Points : 188
    Points
    188
    Par défaut
    Et là ça ne marche plus
    ...
    Mais encore ?

  3. #3
    Membre habitué
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Avril 2012
    Messages
    277
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 277
    Points : 126
    Points
    126
    Par défaut mais encore ...
    Nom : Capture.PNG
Affichages : 104
Taille : 6,1 KoJe te transmet le code si ça peut aider :

    j'ai modifier juste le nom du package com.sd.vue en com.perso.vue :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    package com.perso.vue;
     
    import java.awt.BorderLayout;
    import java.awt.Font;
     
    import javax.swing.JFrame;
    import javax.swing.JLabel;
     
    import com.perso.model.Horloge;
    import com.perso.observer.Observable.Observateur;
     
    public class Fenetre extends JFrame {
     
    	/**
             * 
             */
    	private static final long serialVersionUID = 2111676781640540652L;
     
    	private JLabel label = new JLabel();
     
    	public JLabel getLabel() {
    		return label;
    	}
    	public void setLabel(JLabel label) {
    		this.label = label;
    	}
    	private Horloge horloge;
     
    	public Fenetre() {
    		//initialitation de la JFrame		
    		this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    		this.setLocationRelativeTo(null);
    		this.setResizable(false);
    		this.setSize(200, 80);
    		this.setTitle("Horloge");
    		//on initialise l'horloge
    		this.horloge = new Horloge();
    		//on place un écouteur sur l'horloge
    		this.horloge.addObservateur(new Observateur() {
     
    			@Override
    			public void update(String hour) {
    				// TODO Module de remplacement de méthode auto-généré
    				label.setText(hour);
    			}
    		});
     
    		//on initialise le JLlabel
    		Font police = new Font("DS-digital", Font.TYPE1_FONT, 30);
    		this.label.setFont(police);
    		this.label.setHorizontalAlignment(JLabel.CENTER);
     
    		//on ajoute le JLABEL a la fenetre
    		this.getContentPane().add(this.label, BorderLayout.CENTER);
    		this.horloge.run();
    	}
    	public static void main(String[] args) {
    		// TODO Module de remplacement de méthode auto-généré
    		System.out.println("lancement du programme Horloge");
    		Fenetre fen = new Fenetre();
    		fen.setVisible(true);
    	}
     
    }
    Lorsque je lance mon application je l'a vois dans ma console comme étant lancé mais pas de fenetre Swing à l'écran...

    Mes autres classes sont :

    com.perso.model
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    package com.perso.model;
     
    import java.util.ArrayList;
    import java.util.Calendar;
     
    import com.perso.observer.Observable.Observable;
    import com.perso.observer.Observable.Observateur;
     
    public class Horloge implements Observable{
    	//Objet calendrier pour récupérer l'heure courante
    	private Calendar cal;
    	private String hour = "";
    	private ArrayList<Observateur> listObservateur = new ArrayList<>();
     
    	public void run() {
    		while(true){
    			//On récupère l'instance d'un calendrier à chaque tour 
    			//Elle va nous permettre de récupérer l'heure actuelle
    			this.cal = Calendar.getInstance();
    			this.hour =  //Les heures
    					this.cal.get(Calendar.HOUR_OF_DAY) + " : " 
    					+ 
    					(    //Les minutes
    							this.cal.get(Calendar.MINUTE) < 10
    							? "0" + this.cal.get(Calendar.MINUTE)
    									: this.cal.get(Calendar.MINUTE)
    							)
    							+ " : " 
    							+
    							(    //Les secondes
    									(this.cal.get(Calendar.SECOND)< 10) 
    									? "0"+this.cal.get(Calendar.SECOND) 
    											: this.cal.get(Calendar.SECOND)
    									);
    			//on avertit les observateurs que l'heure a été mise à jour
    			this.updateObservateur();
    			try {
    				Thread.sleep(1000);
    			} catch (InterruptedException e) {
    				e.printStackTrace();
    			}
    		}
    	}
     
    	//Ajoute un observateur à la liste
    	@Override
    	public void addObservateur(Observateur obs) {
    		// TODO Module de remplacement de méthode auto-généré
    		this.listObservateur.add(obs);
    	}
     
    	//Retire tous les observateurs de la liste
    	@Override
    	public void delObservateur() {
    		// TODO Module de remplacement de méthode auto-généré
    		this.listObservateur = new ArrayList<>();
    	}
     
    	//Avertit les observateurs que l'objet observable a changé
    	//et invoque la méthode update() de chaque observateur
    	@Override
    	public void updateObservateur() {
    		// TODO Module de remplacement de méthode auto-généré
    		for (Observateur obs : this.listObservateur) {
    			obs.update(hour);
    		}
    	}
     
     
     
     
    }
    com.perso.observer.Observable
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    package com.perso.observer.Observable;
     
     
    public interface Observable {
    	public void addObservateur(Observateur obs);
    	public void updateObservateur();
    	public void delObservateur();
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    package com.perso.observer.Observable;
     
    public interface Observateur {
    	public void update(String hour);
    }

  4. #4
    Membre habitué
    Profil pro
    Opération
    Inscrit en
    Décembre 2012
    Messages
    91
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activité : Opération

    Informations forums :
    Inscription : Décembre 2012
    Messages : 91
    Points : 188
    Points
    188
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    	System.out.println("lancement du programme Horloge");
    		Fenetre fen = new Fenetre();
    		fen.setVisible(true);
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    public Fenetre() {
      //initialitation de la JFrame
    ...
      this.horloge.run();
    }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    public void run() {
    		while(true){...}
    	}
    Je pense que "fen.setVisible(true)" n'est pas appelé car le constructeur de "Fenetre" bloque sur "while(true){...}" de "horloge.run()"
    Il faut sortir "horloge.run()" du constructeur.

Discussions similaires

  1. [FEDORA] Problème lancement apres install
    Par regat3 dans le forum RedHat / CentOS / Fedora
    Réponses: 11
    Dernier message: 13/09/2006, 14h27
  2. probleme classe apres ajout de variable
    Par croc14 dans le forum Visual C++
    Réponses: 6
    Dernier message: 11/08/2006, 21h03
  3. Réponses: 13
    Dernier message: 20/03/2006, 16h26
  4. Problème reboot après install sous Debian
    Par getupa dans le forum Administration système
    Réponses: 8
    Dernier message: 27/01/2006, 16h19
  5. Problème X après compilation noyau 2.6.13.2
    Par nicodeme dans le forum Applications et environnements graphiques
    Réponses: 9
    Dernier message: 08/10/2005, 14h41

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo