Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.*;
- import java.awt.image.*;
- import java.io.*;
- import javax.swing.*;
- import javax.imageio.ImageIO;
- public class CanvasTest extends Canvas
- {
- final int width = 373,
- height = 264;
- JFrame frame;
- JPanel panel;
- BufferStrategy strategy;
- GraphicsDevice graphicsDevice = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
- Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
- final Point screenCenter = new Point(screenSize.width/2 - ((width + 16)/2), screenSize.height/2 - ((height + 36)/2));
- public static void main(String[] args)
- {
- new CanvasTest();
- }
- public CanvasTest()
- {
- try
- {
- frame = new JFrame();
- panel = (JPanel) frame.getContentPane();
- panel.setPreferredSize(new Dimension(width, height));
- panel.setLayout(null);
- panel.add(this);
- frame.setVisible(true);
- frame.setTitle("Canvas Test");
- frame.setLocation(screenCenter);
- frame.setSize(width + 16, height + 36);
- frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- frame.pack();
- frame.setResizable(true);
- frame.setVisible(true);
- setBounds(0, 0, screenSize.width, screenSize.height);
- createBufferStrategy(2);
- strategy = getBufferStrategy();
- frame.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
- final double TIME_BETWEEN_UPDATES = 1000 / 50;
- while(true)
- {
- long startTime = System.currentTimeMillis();
- Graphics2D g2d = (Graphics2D) strategy.getDrawGraphics();
- //* DRAW STUFF HERE *//
- g2d.drawOval(150, 150, 75, 75);
- g2d.setColor(Color.red);
- g2d.fill3DRect(60, 60, 60, 60, true);
- g2d.dispose();
- strategy.show();
- Toolkit.getDefaultToolkit().sync();
- long waitTime = (long) (TIME_BETWEEN_UPDATES - ((System.currentTimeMillis() - startTime) + 0.5));
- try
- {
- Thread.sleep(waitTime);
- }
- catch(Throwable t)
- {
- }
- }
- }
- catch(Throwable t)
- {
- System.out.println("Fuck you");
- System.exit(0);
- }
- }
- }
Add Comment
Please, Sign In to add comment