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

AWT/Swing Java Discussion :

Swing ou AWT ?


Sujet :

AWT/Swing Java

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 67
    Points : 35
    Points
    35
    Par défaut Swing ou AWT ?
    Bonjour !

    Je vais faire une interface graphique pour un outil assez lourd et je me demandais si je devais mieux prendre Swing ou Awt ?

    J'ai l'impression que AWT est plus léger au niveau du code généré et donc plus simple (et plus propre)

    Qu'en pensez vous ?

  2. #2
    Membre confirmé
    Homme Profil pro
    Ingénieur réseau et sécurité / Consultant
    Inscrit en
    Août 2005
    Messages
    1 068
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur réseau et sécurité / Consultant
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2005
    Messages : 1 068
    Points : 493
    Points
    493
    Par défaut
    de toute facon tu devra surement travailler un peu avec les deux... moi je prend swing... Il y a beacoup plus de fonction etc... mais des fois j'ai aussi besoin d'un petit objet de awt... question poids, sa chnage pas grand chose ... de toute facon tu va pouvoir modifier tout sa... exmple de code généré par swing :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    /**
             * This method initializes monbouton    
             *      
             * @return javax.swing.JButton  
             */
    	private JButton getMonbouton() {
    		if (monbouton == null) {
    			monbouton = new JButton();
    monbouton.setText("texte du bouton");
    			monbouton.setBounds(new java.awt.Rectangle(250,165,34,10));
    		}
    		return monbouton;
    	}
    ya plein de truc en trop... moi je modifie sa comme suis:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    	private JButton getMonbouton() {
     
    			monbouton = new JButton("text du bouton");
    			monbouton.setBounds(new Rectangle(250,165,34,10));
     
    		return monbouton;
    	}
    et c'est deja beaucoup plus propre tu ne trouve pas ???
    Il y a 10 types de personnes sur la planète. Ceux qui comprennent le binaire et ceux qui ne le comprennent pas...

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 67
    Points : 35
    Points
    35
    Par défaut
    C'est sur !

    Merci bien, je ne savais pas qu'on pouvais mélanger les 2 !

  4. #4
    Expert éminent sénior
    Avatar de adiGuba
    Homme Profil pro
    Développeur Java/Web
    Inscrit en
    Avril 2002
    Messages
    13 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Java/Web
    Secteur : Transports

    Informations forums :
    Inscription : Avril 2002
    Messages : 13 938
    Points : 23 190
    Points
    23 190
    Billets dans le blog
    1
    Par défaut
    Salut,

    Citation Envoyé par cyrill
    question poids, sa chnage pas grand chose ...
    Je dirais même qu'avec les dernière JVM, Swing est plus performant qu'AWT...


    Citation Envoyé par cyrill
    et c'est deja beaucoup plus propre tu ne trouve pas ???
    Euh... non pas du tout !!!
    Le if te permet de ne pas recréer l'objet si il existe déjà... Ains lors du premier appel à la méthode, comme le bouton n'exise pas il est créé, et lors des appels suivant il est directement renvoyé...

    Si tu supprimes ce if tu risque d'avoir des problèmes si tu utilises plusieurs fois la méthode car tu te retrouvera avec plusieurs boutons...

    Citation Envoyé par Rekiem
    Merci bien, je ne savais pas qu'on pouvais mélanger les 2 !
    Non on ne peut pas !!!

    FAQ : Peut-on mélanger Awt et Swing ?

    a++

  5. #5
    Membre habitué
    Inscrit en
    Décembre 2004
    Messages
    201
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Décembre 2004
    Messages : 201
    Points : 179
    Points
    179
    Par défaut
    Citation Envoyé par cyrill
    de toute facon tu devra surement travailler un peu avec les deux... moi je prend swing... Il y a beacoup plus de fonction etc... mais des fois j'ai aussi besoin d'un petit objet de awt... question poids, sa chnage pas grand chose ... de toute facon tu va pouvoir modifier tout sa... exmple de code généré par swing :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    /**
             * This method initializes monbouton    
             *      
             * @return javax.swing.JButton  
             */
    	private JButton getMonbouton() {
    		if (monbouton == null) {
    			monbouton = new JButton();
    monbouton.setText("texte du bouton");
    			monbouton.setBounds(new java.awt.Rectangle(250,165,34,10));
    		}
    		return monbouton;
    	}
    ya plein de truc en trop... moi je modifie sa comme suis:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
     
    	private JButton getMonbouton() {
     
    			monbouton = new JButton("text du bouton");
    			monbouton.setBounds(new Rectangle(250,165,34,10));
     
    		return monbouton;
    	}
    et c'est deja beaucoup plus propre tu ne trouve pas ???
    Oui ca allège beaucoup ton code niveau ligne,

    Mais si tu as plusieurs boutons ca allourdie énormément ton applicationn niveau optimisation

    De plus setBounds signifie un layout(null), c'est très moyen comme code si tu redimensionnne ta fenêtre

  6. #6
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 67
    Points : 35
    Points
    35
    Par défaut
    En y réfléchissant bien, je vois pas comment on fais pour ne pas mettre du AWT dans du swing ?
    Rien que l'exemple d'un bouton et le clique dessus, lorsque j'écris l'évenement,on me demande plein de classe d'awt !

    Et puis pourquoi c'est moyen de mettre un layout null ? Perso je trouve ca infaisable de faire une appli graphique avec la fenetre principale qui a un layout différent de null, on ne peut pas mettre nos composants ou l'on veut...

  7. #7
    Expert éminent

    Profil pro
    Fabricant et casseur d'avions
    Inscrit en
    Avril 2004
    Messages
    3 813
    Détails du profil
    Informations personnelles :
    Localisation : France, Tarn (Midi Pyrénées)

    Informations professionnelles :
    Activité : Fabricant et casseur d'avions
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Avril 2004
    Messages : 3 813
    Points : 7 638
    Points
    7 638
    Par défaut
    Citation Envoyé par Rekiem
    En y réfléchissant bien, je vois pas comment on fais pour ne pas mettre du AWT dans du swing ?
    Rien que l'exemple d'un bouton et le clique dessus, lorsque j'écris l'évenement,on me demande plein de classe d'awt !
    C'est juste au niveau rendu graphique que ça pose problème... c'est expliqué dans le lien qu'a donné adiguba...

    Citation Envoyé par Rekiem
    Et puis pourquoi c'est moyen de mettre un layout null ? Perso je trouve ca infaisable de faire une appli graphique avec la fenetre principale qui a un layout différent de null, on ne peut pas mettre nos composants ou l'on veut...
    Et bien prend ton application, et va la faire tourner sur un autre OS que le tien... tu auras peu de chance de reconnaitre tes interfaces graphiques! Les layouts (autres que null) sont là pour pouvoir créer des interfaces reproductibles d'un système à l'autre (entre autre). Ca n'est pas forcément exactement la même chose, les composant seront peut-être (et sans doute) lgèrement modifiés, mais l'apparence globale de ton interface sera conservée.
    Avec un layout(null)... tu cours des risques... regarde déjà quand tu redimensionnes tes fenêtres ce qu'il se passe! Les layouts permettent de gérer tout ça automatiquement.
    C'est certain qu'utiliser un layout demande un peu de réflexion sur le positionnement des composant. Mais une fois qu'on a compris le principe, on ne peut plus s'en passer!
    "Errare humanum est, sed perseverare diabolicum"

    Ma page sur DVP.com

  8. #8
    Membre averti Avatar de soad
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    520
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2004
    Messages : 520
    Points : 439
    Points
    439
    Par défaut
    Citation Envoyé par Rekiem
    En y réfléchissant bien, je vois pas comment on fais pour ne pas mettre du AWT dans du swing ?
    Rien que l'exemple d'un bouton et le clique dessus, lorsque j'écris l'évenement,on me demande plein de classe d'awt !
    Il ne faut pas mélanger des composants graphiques AWT et SWING !!!


    Citation Envoyé par Rekiem
    Et puis pourquoi c'est moyen de mettre un layout null ? Perso je trouve ca infaisable de faire une appli graphique avec la fenetre principale qui a un layout différent de null, on ne peut pas mettre nos composants ou l'on veut...
    Avec un peu de pratique c'est tres faisable...

Discussions similaires

  1. Crée une IHM swing ou awt avec netbeans
    Par Wilgard dans le forum NetBeans
    Réponses: 3
    Dernier message: 18/04/2007, 11h03
  2. Réponses: 5
    Dernier message: 08/01/2007, 19h40
  3. Java - Swing et awt
    Par adilo dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 26/08/2006, 15h50
  4. [swing et Awt]cohabitation obligatoire
    Par goussepi dans le forum AWT/Swing
    Réponses: 9
    Dernier message: 03/05/2006, 18h07
  5. swing et AWT
    Par milootooloo dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 03/11/2005, 16h14

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