romainbisson
Messages postés88Date d'inscriptionjeudi 25 octobre 2007StatutMembreDernière intervention 9 septembre 2014
-
5 juin 2008 à 18:27
cs_Chatbour
Messages postés764Date d'inscriptionjeudi 27 juillet 2006StatutMembreDernière intervention 6 septembre 2010
-
6 juin 2008 à 14:14
Bonsoir,
j'ai un probleme avec mon programme
public class Bisson extends JFrame implements MouseListener{
error : The type Bisson must implement the inherited abstract method
MouseListener.mouseClicked(MouseEvent)
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 5 juin 2008 à 21:55
Salut,
pour le prob
error : The type Bisson must implement the inherited abstract method
MouseListener.mouseClicked(MouseEvent)
c'est normale, dans le code que tu as mit tu as déclaré
public void mouseCliked(MouseEvent e) {}
et non
public void mouseClic ked(MouseEvent e) {}
pour ce qui est de l'image de fond, vire le paint qui ne sert à rien et
qui est super vilain (en SWING on ne dessine pas dans paint mais
paintComponent, ensuite on ne dessine pas directement dans une fenêtre mais dans
son container)
je te propose la solution suivante (j'ai repris ton code)
(solution sans le vilain paint)
public Bisson(){
//On donne un titre à la fenetre
super("Bisson Informatique");
//Cette opération est réalisé lors de la fermeture de la fenetre
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
//Taille de la fenetre 1024*768
setBounds(0,0,1024,768);
//La fenetre n'est pas redimensionable
/**** bouton facture *****/
bouton_facture = new JButton();
bouton_facture.setBounds(100,100,100,100);
//création du container
JLabel container = new JLabel();
// chargement de l'image
ImageIcon background = new ImageIcon("images/fond.jpg");
//on s'assure que l'image soit bien chargée
background.getImage();
// charge l'image
container.setIcon(background);
//changement du layout (pour reprendre ce que tu as fait
container.setLayout(null);
//ajout des composants
container.add(bouton_facture);
container.add(facture);
container.add(bouton_devis);
container.add(devis);
container.add(bouton_commande);
container.add(commande);
container.add(logo);
//container.add(version);
//ajout du container
setContentPane(container);
//On rend la fenetre lisible
setVisible(true);
}
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."
//création du container
JLabel container = new JLabel();
// chargement de l'image
ImageIcon background = new ImageIcon("images/fond.jpg");
//on s'assure que l'image soit bien chargée
background.getImage();
// charge l'image
container.setIcon(background);
//changement du layout (pour reprendre ce que tu as fait
container.setLayout(null);
//ajout des composants
container.add(bouton_facture);
container.add(facture);
container.add(bouton_devis);
container.add(devis);
container.add(bouton_commande);
container.add(commande);
//container.add(logo);
//container.add(version);
//ajout du container
setContentPane(container);
//On rend la fenetre lisible
setVisible(true);
}
/* public void mouseCliked(MouseEvent e) {}
//Invoked when a mouse button has been pressed on a component.
public void mousePressed(MouseEvent e) {}
//Invoked when a mouse button has been released on a component.
public void mouseReleased(MouseEvent e) {}
//Invoked when the mouse enters a component.
public void mouseEntered(MouseEvent e) {}
//Invoked when the mouse exits a component.
public void mouseExited(MouseEvent e) {}
*/
//Permet l'execution du programme
public static void main(String[] args){
sinon maintenant que je vois la déclaration de ta
classe...
1 je suis étonné de voir les composants
en static... c'est super risqué de le faire(99% de chances
d'avoir de gros bug, 100% de trou de sécu sur ton
application)...
2 tu ne restreints pas la portée de tes
variables à l'aide du qualifieur 'private'
3 tu n'utilises
pas de LayoutManager pour le placement de tes composants (pourtant ils sont super
pratique)
bref j'insiste vraiment mais le static dans un
prog objet est à utiliser que si il est vraiment justifié
et dans ton cas il ne l'est pas franchement (rarement pour les
composants d'une IHM)
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."
Twinuts
Messages postés5375Date d'inscriptiondimanche 4 mai 2003StatutModérateurDernière intervention14 juin 2023111 6 juin 2008 à 12:05
Salut,
raaaaa ^^
<meta http-equiv="CONTENT-TYPE" content="text/html; charset=utf-8" /><title></title><meta name="GENERATOR" content="OpenOffice.org 2.4 (Linux)" /><style type="text/css"><!--
@page { size: 21cm 29.7cm; margin: 2cm }
P { margin-bottom: 0.21cm }
--></style>imagine tu fais une application java
avec tout plein de static et moi à coté je dev une application qui
récupère les variables static de ton application pour y foutre ma
merde et faire tout plein de truc à ton insu, genre faire un thread
qui toute les secondes affiche/masque tes champs texte, écriture
aléatoire de mots dans les champs, récupération des textes pour
les envoyer via socket sans que tu le veuilles, etc...
------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."