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
| JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel() {
// la texture c'est juste pour voir le panel scroller lorsqu'il est vide
private Paint paint = new TexturePaint(createTexture(),new Rectangle2D.Double(0,0,16,16));
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D)g;
g2d.setPaint(paint);
g2d.fillRect(0, 0, getWidth(), getHeight());
}
private BufferedImage createTexture() {
BufferedImage image = new BufferedImage(16, 16, BufferedImage.TYPE_INT_ARGB);
Graphics2D g = image.createGraphics();
g.setColor(Color.WHITE);
g.drawLine(0, 14, 8, 14);
g.setColor(Color.BLACK);
g.drawLine(0, 15, 8, 15);
g.dispose();
return image;
}
};
panel.setPreferredSize(new Dimension(1000,1000));
JScrollPane scrollPane = new JScrollPane(panel, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED, JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);
frame.add(scrollPane);
frame.setSize(800,600);
frame.setLocationRelativeTo(null);
frame.setVisible(true); |
Partager