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
| import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.image.BufferedImage;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
public class ClicNscroll extends JPanel implements MouseListener
{
public static void main( String arg[] )
{
new ClicNscroll( 800, 600 );
}
private BufferedImage buffer;
private Graphics graph;
public ClicNscroll( int large, int haut )
{
buffer = new BufferedImage( large, haut, BufferedImage.TYPE_INT_ARGB );
graph = buffer.getGraphics();
graph.setColor( Color.BLACK );
addMouseListener( this );
JFrame frame = new JFrame( "ça scroll" );
frame.getContentPane().setLayout( new BorderLayout() );
frame.getContentPane().add( new JScrollPane( this ), BorderLayout.CENTER );
frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
frame.setSize( 300, 200 );
frame.setVisible( true );
}
@Override
public void paintComponent( Graphics g )
{
super.paintComponent( g );
g.drawImage( buffer, 0, 0, this );
}
@Override
public Dimension getMinimumSize() { return new Dimension( buffer.getWidth(), buffer.getHeight() ); }
@Override
public Dimension getPreferredSize() { return getMinimumSize(); }
@Override
public void mouseClicked( MouseEvent event )
{
graph.fillOval( event.getX() - 10, event.getY() - 10, 20, 20 );
repaint();
}
@Override
public void mouseEntered( MouseEvent arg0 ){}
@Override
public void mouseExited( MouseEvent arg0 ){}
@Override
public void mousePressed( MouseEvent arg0 ){}
@Override
public void mouseReleased( MouseEvent arg0 ){}
} |
Partager