Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
4839 connectés 

  FORUM HardWare.fr
  Programmation
  Java

  JButton

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

JButton

n°936604
just_me_13
Posté le 04-01-2005 à 14:07:27  profilanswer
 

salut tout le monde !!!
bon je dois faire une sorte de calculatrice en java et j'arrive pas à créer le bouton pour valider le calcul... j'ai fait les panel, label et textfield, ça ça va! ms pr les bouton je comprends il les veut ps....
voilà ce que j'ai écrit :
JButton JB=new Button("Calculer" );
        JB.setPreferredSize(new Dimension(100,70));
 JB.addActionListener(this);
 JB.setActionCommand("calcul" );
        JP4.add(JB);
et dc je voudrais savoir s'il manque un truc ?  
merci d'avance !  :bounce:

mood
Publicité
Posté le 04-01-2005 à 14:07:27  profilanswer
 

n°936605
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 04-01-2005 à 14:10:24  profilanswer
 

JButton jb = new JButton("Calculer" );

n°936609
just_me_13
Posté le 04-01-2005 à 14:12:02  profilanswer
 

merci !!! c'est vrai que déjà ça me lève une erreur...
et est ce que tu sais te servir des getContentPane() ?? pcq je comprends ps trop à quoi ça sert ça ! et est ce que c'est obligé d'en mettre ???

n°936627
just_me_13
Posté le 04-01-2005 à 14:21:11  profilanswer
 

c'est bien de lire ms ça serait encore mieux de me répondre !!! ;-) lol

n°936630
Profil sup​primé
Posté le 04-01-2005 à 14:22:42  answer
 
n°936633
just_me_13
Posté le 04-01-2005 à 14:27:11  profilanswer
 

merci ! c'est ps mal ce site, je vais m'en inspirez !!!lol
ms si qqn d'autre a qqch à rajouter, n'hésitez pas !!!
mercii :)

n°936635
just_me_13
Posté le 04-01-2005 à 14:28:51  profilanswer
 

bon je vous mets ce que j'ai fait comme ça si vous voyez un truc faux gros comme le monde dites le moi svp car je dois avouer que le java je comprends ps tout !!!
 
import javax.swing.JButton;
import java.lang.*;
import java.io.*;
import java.util.Vector;
import java.awt.Container;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.Dimension;
import java.lang.Object;
 
 
 
 
 
 
class calculette extends JFrame {
    calculette() {
     
        JPanel JP1=new JPanel();
        JP1.setBackground(Color.blue);
        JP1.setPreferredSize(new Dimension(100,400));
        JP1.setLayout(new BorderLayout());
      //  Container cont=JP1.getContentPane();
 
        JPanel JP2=new JPanel();
        JP2.setBackground(Color.blue);
        JP2.setPreferredSize(new Dimension(100,80));
        JP2.setLayout(new GridLayout(1,2));
        JLabel JL1=new JLabel();
        JL1.setBackground(Color.blue);
        JP2.add(JL1);
        JLabel JL2=new JLabel();
        JL2.setBackground(Color.blue);
        JP2.add(JL2);
        JP1.add(JP2, BorderLayout.NORTH);
 
 
         
        JPanel JP3=new JPanel();
        JP3.setBackground(Color.blue);
        JP3.setPreferredSize(new Dimension(100,250));
        JP2.setLayout(new GridLayout(3,2));
        JLabel JL3=new JLabel();
        JL3.setBackground(Color.blue);
        JP3.add(JL3);
        JTextField JTF1=new JTextField();
        JTF1.setBackground(Color.blue);
        JP3.add(JTF1);
        JLabel JL4=new JLabel();
        JL4.setBackground(Color.blue);
        JP3.add(JL3);
        JTextField JTF2=new JTextField();
        JTF2.setBackground(Color.blue);
        JP3.add(JTF2);
        JLabel JL5=new JLabel();
        JL5.setBackground(Color.blue);
        JP3.add(JL5);
        JTextField JTF3=new JTextField();
        JTF3.setBackground(Color.blue);
        JP3.add(JTF3);
         
        JPanel JP4=new JPanel();
        JP4.setBackground(Color.blue);
        JP4.setPreferredSize(new Dimension(100,70));
        JP4.setLayout(new BorderLayout());
        JButton JB=new JButton("Calculer" );
        JB.setPreferredSize(new Dimension(100,70));
 JB.addActionListener(this);
 JB.setActionCommand("calcul" );
             
        JP4.add(JB);
 }
 
public void actionPerformed (ActionEvent e) {
 if(e.getActionCommand().equals("calcul" )) System.out.println("ldfhdl" );
 
 
 
}  
         
}
 
 
 
public class graphique {
    public static void main () {
    JFrame JF=new JFrame("Principale" );
    JF.setBackground(Color.gray);
    JF.setPreferredSize(new Dimension(100,400));
    JF.add(JP1);
    }
}    

n°936640
just_me_13
Posté le 04-01-2005 à 14:30:32  profilanswer
 

quelqu'un connait la différence entre un Button et un JButton ??

n°936646
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 04-01-2005 à 14:35:06  profilanswer
 

un ContentPane est en fait un JPanel, qui est un conteneur pour d'autres composants (JButtons, JLabel, etc...).
ce JPanel contiendra tous les composants de ton interface. Il sera nécessaire de spécifier un Layout pour ce JPanel, qui te sert à spécifier la mise en place des composants (horizontalement, verticalement, en grille, etc...)

n°936648
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 04-01-2005 à 14:36:12  profilanswer
 

just_me_13 a écrit :

quelqu'un connait la différence entre un Button et un JButton ??

Button fait partie d'AWT, JButton fait partie de Swing

mood
Publicité
Posté le 04-01-2005 à 14:36:12  profilanswer
 

n°936658
just_me_13
Posté le 04-01-2005 à 14:41:47  profilanswer
 

Harkonnen a écrit :

un ContentPane est en fait un JPanel, qui est un conteneur pour d'autres composants (JButtons, JLabel, etc...).
ce JPanel contiendra tous les composants de ton interface. Il sera nécessaire de spécifier un Layout pour ce JPanel, qui te sert à spécifier la mise en place des composants (horizontalement, verticalement, en grille, etc...)


moi en fait j'ai un JFrame, dans ce JFrame un JPanel JP1 qui contient tout le reste...
dc ce JP1 je le déclare ps en JPanel ms en ContentPane, c'est bien ça ?  :??:

n°936666
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 04-01-2005 à 14:49:10  profilanswer
 

just_me_13 a écrit :

moi en fait j'ai un JFrame, dans ce JFrame un JPanel JP1 qui contient tout le reste...
dc ce JP1 je le déclare ps en JPanel ms en ContentPane, c'est bien ça ?  :??:


pas du tout !
1/ tu créé une méthode qui crééra le ContentPane (en déclarant un JPanel, en spécifiant un layout via JPanel.setLayout() et en ajoutant tes boutons via la méthode JPanel.add()
2/ une fois ce ContentPane créé, tu l'assignes à ta Dialog dans son constructeur via un truc du genre  

Code :
  1. this.setContentPane(ContentPane);

n°936669
patachou
Posté le 04-01-2005 à 14:50:57  profilanswer
 

C'est quoi le layout sur lequel tu ajoutes tes boutons ?

n°936680
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 04-01-2005 à 14:56:03  profilanswer
 

évite de faire la même connerie que moi : remplace

Code :
  1. JB.addActionListener(this);


par un truc du genre

Code :
  1. JB.addActionListener(new java.awt.event.ActionListener() {
  2.                        public void actionPerformed(java.awt.event.ActionEvent e) {...}});


Message édité par Harkonnen le 04-01-2005 à 14:57:10
n°936689
FlorentG
Posté le 04-01-2005 à 14:58:44  profilanswer
 

Déjà si tu veux t'y retrouvé, évite les JP1, JP2, JL1, parce que là ça donne mal à la tête de vouloir comprendre ton truc... Donne plutot des nom explicites...

n°936692
WhatDe
Posté le 04-01-2005 à 15:00:30  profilanswer
 

Harkonnen a écrit :

pas du tout !
1/ tu créé une méthode qui crééra le ContentPane (en déclarant un JPanel, en spécifiant un layout via JPanel.setLayout() et en ajoutant tes boutons via la méthode JPanel.add()
2/ une fois ce ContentPane créé, tu l'assignes à ta Dialog dans son constructeur via un truc du genre  

Code :
  1. this.setContentPane(ContentPane);



Pourquoi pas JF.getContentPane().add(JP1) ?
La frame a déjà un content pane, pourquoi en recréer un ?

n°936697
FlorentG
Posté le 04-01-2005 à 15:03:12  profilanswer
 

Oui, ça sert à rien d'en refaire un...

n°936707
just_me_13
Posté le 04-01-2005 à 15:07:49  profilanswer
 

ok merci
et je vais surement poser une question très con pour quelqu'un qui fait du java...
ms j'ai créé une classe calculette ds laquelle je crée tous mes panels et tout, ms comment je fais pr m'en servir dans main ???

n°936717
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 04-01-2005 à 15:14:17  profilanswer
 

WhatDe a écrit :

Pourquoi pas JF.getContentPane().add(JP1) ?
La frame a déjà un content pane, pourquoi en recréer un ?

euh oui...effctivement... mais alors, pourquoi le plugin d'Eclipse m'en a recréé un ? :gratgrat:

n°936718
FlorentG
Posté le 04-01-2005 à 15:15:34  profilanswer
 

just_me_13 a écrit :

ok merci
et je vais surement poser une question très con pour quelqu'un qui fait du java...
ms j'ai créé une classe calculette ds laquelle je crée tous mes panels et tout, ms comment je fais pr m'en servir dans main ???


 
Tu créer un JFrame dans ton main, tu instancies ton panel et tu l'ajoute dans la JFrame :)

n°936719
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 04-01-2005 à 15:17:03  profilanswer
 

just_me_13 a écrit :

ok merci
et je vais surement poser une question très con pour quelqu'un qui fait du java...
ms j'ai créé une classe calculette ds laquelle je crée tous mes panels et tout, ms comment je fais pr m'en servir dans main ???


faudrait voir à lire le tutorial de Sun hein, ça y figure :o

n°936734
WhatDe
Posté le 04-01-2005 à 15:25:28  profilanswer
 

Harkonnen a écrit :

euh oui...effctivement... mais alors, pourquoi le plugin d'Eclipse m'en a recréé un ? :gratgrat:


 [:airforceone]

n°936756
just_me_13
Posté le 04-01-2005 à 15:42:31  profilanswer
 

ben j'y suis allée sur le site de SUN ms jy comprends rien, sinon je vais sur l'api et j'ai mon bouquin sur les genoux ms je comprends ps tt  lol
ms merci qd meme ;)

n°936763
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 04-01-2005 à 15:46:37  profilanswer
 


enchanté [:cupra]

n°936846
just_me_13
Posté le 04-01-2005 à 16:22:39  profilanswer
 


mdr  :lol:  

n°937024
nofutur
Posté le 04-01-2005 à 17:46:39  profilanswer
 

ma pauvre binome(just_me_13,) vous l'avez pas bcp aidé! aller,  un peu de courage que diable, je suis sur que vous pouvez trouvé a l'aidé un peu plus!

n°937032
just_me_13
Posté le 04-01-2005 à 17:51:32  profilanswer
 

mdr mais non c'est gentil de m'aider nofutur mais là ça y est il m'ont aidé, j'ai fait ça ! binome très productif comme vous pouvez le constater ;) lol

n°937043
nofutur
Posté le 04-01-2005 à 17:57:25  profilanswer
 

ho les femmes!!!!  
:love: -> [:aozora] -> :pt1cable:

n°937046
just_me_13
Posté le 04-01-2005 à 17:58:08  profilanswer
 

nofutur a écrit :

ho les femmes!!!!  
:love: -> [:aozora] -> :pt1cable:


lol mais c'était gentil quand meme !!!  :hello:

n°937154
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 04-01-2005 à 19:04:00  profilanswer
 

nofutur a écrit :

ma pauvre binome(just_me_13,) vous l'avez pas bcp aidé! aller,  un peu de courage que diable, je suis sur que vous pouvez trouvé a l'aidé un peu plus!


on l'a pas beaucoup aidé, tu plaisantes ? [:mlc]

n°937458
nofutur
Posté le 05-01-2005 à 08:05:28  profilanswer
 

c'est vrai, mais elle a quand même beaucoup galéré, enfin c ce que j'ai pu remarquer..de toute facon, je suis a la ramasse en java, donc je suis mal placé pour faire des commentaires en fait...
(je dois sortir? lol)

n°937693
nraynaud
lol
Posté le 05-01-2005 à 12:44:34  profilanswer
 

Harkonnen a écrit :


Code :
  1. this.setContentPane(ContentPane);



bouge pas que j'attrape ma pelle ...
LE MONSIEUR TE DIT QU'ON NE SOUCLASSE PAS LES COMPOSANTS DE HAUT NIVEAU EN SWING !
 
maFrame.setContentPane(monPane);

n°937699
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 05-01-2005 à 12:47:01  profilanswer
 

nraynaud a écrit :

bouge pas que j'attrape ma pelle ...
LE MONSIEUR TE DIT QU'ON NE SOUCLASSE PAS LES COMPOSANTS DE HAUT NIVEAU EN SWING !
 
maFrame.setContentPane(monPane);


bon c'est décidé, je ne fais plus confiance au code pourri produit par le plugin d'Eclipse, je fais tout à la mano parce que ça devient n'importe quoi http://forum.hardware.fr/icones/message/icon8.gif
 
edit:  [:wolfman]


Message édité par Harkonnen le 05-01-2005 à 12:47:28
n°937785
FlorentG
Posté le 05-01-2005 à 13:38:55  profilanswer
 

nraynaud a écrit :

bouge pas que j'attrape ma pelle ...
LE MONSIEUR TE DIT QU'ON NE SOUCLASSE PAS LES COMPOSANTS DE HAUT NIVEAU EN SWING !
 
maFrame.setContentPane(monPane);


 
Tiens, pourquoi donc ? :??:

n°937791
zedar
Posté le 05-01-2005 à 13:45:29  profilanswer
 

+1 la raison m'intéresse aussi :)

n°937807
nraynaud
lol
Posté le 05-01-2005 à 13:54:51  profilanswer
 

ça sert à rien.
 
or, quand ça sert pas, on fait pas.
 
 
 
La vraie raison, c'est qu'une classe représentant un JPanel avec du monde dedans n'a pas de sens, qu'un new JPanel() c'est un panel vide, que tu n'ajoutes pas de comportement pertinent à ton JPanel, et qu'enfin on doit éviter au maximum de sous classer (surtout des classes concrêtes), et qu'il vaut mieux composer.

n°937815
FlorentG
Posté le 05-01-2005 à 13:58:36  profilanswer
 

L'argument de choc... un peu fumeux ;)
 
Ca peut servir de sous-classer une JFrame pour y rajouter des fonctionnalités, non ? C'est même le principe de l'héritage...

n°937829
benou
Posté le 05-01-2005 à 14:02:57  profilanswer
 

FlorentG a écrit :

L'argument de choc... un peu fumeux ;)
 
Ca peut servir de sous-classer une JFrame pour y rajouter des fonctionnalités, non ? C'est même le principe de l'héritage...


oui mais la plupart du temps, tu utilises la JFrame, tu ne lui ajoutes pas de fonctionnalitées ...


---------------
ma vie, mon oeuvre - HomePlayer
n°937833
FlorentG
Posté le 05-01-2005 à 14:04:16  profilanswer
 

benou a écrit :

oui mais la plupart du temps, tu utilises la JFrame, tu ne lui ajoutes pas de fonctionnalitées ...


Dans ce cas là, oui ça sert à rien :jap: Mais dans les autres cas :??:

n°937834
benou
Posté le 05-01-2005 à 14:05:51  profilanswer
 

FlorentG a écrit :

Dans ce cas là, oui ça sert à rien :jap: Mais dans les autres cas :??:


ben ils sont vachement rare les autres cas ...
 
et puis avant d'hériter d'un truc aussi compliqué qu'une JFrame, y a intérêt de savoir comment ca marche dedans ... ce que peu de gens connaissent ...


---------------
ma vie, mon oeuvre - HomePlayer
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Java

  JButton

 

Sujets relatifs
JButton[JAVA - SWING] JButton dans une JTable
Listener sur une liste de JButton[swing] creer un JButton ou JLabel qui renvoie une page au browser
Creation de JButton avec une boucle for[Java] Class swing - Coordonnées d'un JButton
[Résolu] Définir la taille d'un JButton ?alignement de text dans un JButton
JButton dans une Box : problème de dimensionsMes JButton et JLabel perdus dans ma fenêtre [Java]
Plus de sujets relatifs à : JButton


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)