Bout Java
Résolu
Zyo1
Messages postés
83
Date d'inscription
Statut
Membre
Dernière intervention
-
Zyo1 Messages postés 83 Date d'inscription Statut Membre Dernière intervention -
Zyo1 Messages postés 83 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
J'ai fait le code suivant afin de pouvoir placer des boutons sur une image placée en fond dans une fenêtre Java et j'y suis parvenu :
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import javax.swing.*;
public class ImageFond extends JPanel implements ActionListener
{
Image backGround = null;
JPanel etud_pn = new JPanel();
public ImageFond( Image backGround )
{
this.backGround = backGround;
setOpaque( false );
}
public void paint( Graphics g )
{
if ( backGround != null )
g.drawImage( backGround, 0, 0,getSize().width, getSize().height, this );
super.paint( g );
}
public static void main(String[] args )
{
JFrame frm = new JFrame( "Fenetre" );
frm.setBounds( 3, 0, 1355, 700 ); //taille
frm.getContentPane().setLayout( new BorderLayout() );
JPanel pnl = new ImageFond( loadImages( frm, ".//Capture.PNG" ) );
pnl.setLayout( null );//new GridLayout( 10, 10 ) );
JButton btn = new ImageFond.ButtonAvecFond( loadImages( frm, ".//Bouton.gif" ) );
btn.setForeground( Color.black );
btn.setText( "bouton1" );
btn.setBounds( 400, 123, 550, 50 );
pnl.add( btn );
JButton btn2 = new ImageFond.ButtonAvecFond( loadImages( frm, ".//Btn.gif" ) );
btn2.setForeground( Color.black );
btn2.setText( "bouton2" );
btn2.setBounds( 400, 245, 550, 50 );
pnl.add( btn2 );
frm.getContentPane().add( pnl, BorderLayout.CENTER );
frm.setVisible( true );
frm.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e)
{
super.windowClosing(e);
System.exit( 0 );
}
});
}
private static Image loadImages( JFrame frm, String imageFile )
{
try
{
MediaTracker mTrack = new MediaTracker( frm ); // load les image avan de les afficher
Image image = frm.getToolkit().getImage( getURL( imageFile ) );
mTrack.addImage( image, 0 );
mTrack.waitForAll();
return image;
}
catch (Exception e)
{
System.out.println( " getimages : " + e );
}
return null;
}
public static URL getURL( String file )
throws MalformedURLException
{
URL documentBase = new URL("file:///" + System.getProperty("user.dir") + "/");
return new URL( documentBase, file );
}
public static class ButtonAvecFond extends JButton
{
Image backGround = null;
public ButtonAvecFond( Image backGround )
{
this.backGround = backGround;
setOpaque( false );
}
public void paint( Graphics g )
{
if ( backGround != null )
g.drawImage( backGround, 0, 0,getSize().width, getSize().height, this );
// ButtonModel model = getModel();
// if ( !model.isArmed() )
super.paint( g );
}
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
}
}
Cependant je n'arrive pas à faire d'interaction avec le bouton, je voudrais pour commencer faire en sorte que lorsque je clique sur le bouton nommé bouton1 celui-ci disparaisse et laisse apparaître le bouton nommé bouton2.
Pourriez-vous m'indiquer le code à ajouter svp car je suis débutant et cela m'aiderai énormément
J'ai fait le code suivant afin de pouvoir placer des boutons sur une image placée en fond dans une fenêtre Java et j'y suis parvenu :
import java.awt.*;
import java.awt.event.*;
import java.net.*;
import javax.swing.*;
public class ImageFond extends JPanel implements ActionListener
{
Image backGround = null;
JPanel etud_pn = new JPanel();
public ImageFond( Image backGround )
{
this.backGround = backGround;
setOpaque( false );
}
public void paint( Graphics g )
{
if ( backGround != null )
g.drawImage( backGround, 0, 0,getSize().width, getSize().height, this );
super.paint( g );
}
public static void main(String[] args )
{
JFrame frm = new JFrame( "Fenetre" );
frm.setBounds( 3, 0, 1355, 700 ); //taille
frm.getContentPane().setLayout( new BorderLayout() );
JPanel pnl = new ImageFond( loadImages( frm, ".//Capture.PNG" ) );
pnl.setLayout( null );//new GridLayout( 10, 10 ) );
JButton btn = new ImageFond.ButtonAvecFond( loadImages( frm, ".//Bouton.gif" ) );
btn.setForeground( Color.black );
btn.setText( "bouton1" );
btn.setBounds( 400, 123, 550, 50 );
pnl.add( btn );
JButton btn2 = new ImageFond.ButtonAvecFond( loadImages( frm, ".//Btn.gif" ) );
btn2.setForeground( Color.black );
btn2.setText( "bouton2" );
btn2.setBounds( 400, 245, 550, 50 );
pnl.add( btn2 );
frm.getContentPane().add( pnl, BorderLayout.CENTER );
frm.setVisible( true );
frm.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e)
{
super.windowClosing(e);
System.exit( 0 );
}
});
}
private static Image loadImages( JFrame frm, String imageFile )
{
try
{
MediaTracker mTrack = new MediaTracker( frm ); // load les image avan de les afficher
Image image = frm.getToolkit().getImage( getURL( imageFile ) );
mTrack.addImage( image, 0 );
mTrack.waitForAll();
return image;
}
catch (Exception e)
{
System.out.println( " getimages : " + e );
}
return null;
}
public static URL getURL( String file )
throws MalformedURLException
{
URL documentBase = new URL("file:///" + System.getProperty("user.dir") + "/");
return new URL( documentBase, file );
}
public static class ButtonAvecFond extends JButton
{
Image backGround = null;
public ButtonAvecFond( Image backGround )
{
this.backGround = backGround;
setOpaque( false );
}
public void paint( Graphics g )
{
if ( backGround != null )
g.drawImage( backGround, 0, 0,getSize().width, getSize().height, this );
// ButtonModel model = getModel();
// if ( !model.isArmed() )
super.paint( g );
}
}
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
}
}
Cependant je n'arrive pas à faire d'interaction avec le bouton, je voudrais pour commencer faire en sorte que lorsque je clique sur le bouton nommé bouton1 celui-ci disparaisse et laisse apparaître le bouton nommé bouton2.
Pourriez-vous m'indiquer le code à ajouter svp car je suis débutant et cela m'aiderai énormément
A voir également:
- Bout Java
- Waptrick java football - Télécharger - Jeux vidéo
- Jeux java itel - Télécharger - Jeux vidéo
- Eclipse java - Télécharger - Langages
- Java apk - Télécharger - Langages
- Waptrick java voiture - Télécharger - Jeux vidéo
2 réponses
Exemple :
btn.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { btn.setVisible(false); btn2.setVisible(true); } }); btn2.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { btn.setVisible(true); btn2.setVisible(false); } });