Docsity
Docsity

Prepare for your exams
Prepare for your exams

Study with the several resources on Docsity


Earn points to download
Earn points to download

Earn points by helping other students or get them with a premium plan


Guidelines and tips
Guidelines and tips

Understanding Repaint Cycle - Web Design and Development - Lecture Slides, Slides of Web Design and Development

Understanding Repaint Cycle, Java Graphics, Painting Strategy, Last Example Code, How to Animate, Problem, Solution, Coordinate System, Live Output, paddle movement are terms you can learn in this lecture along with others.

Typology: Slides

2011/2012

Uploaded on 11/06/2012

parasad
parasad 🇮🇳

4.5

(56)

129 documents

1 / 22

Toggle sidebar

Related documents


Partial preview of the text

Download Understanding Repaint Cycle - Web Design and Development - Lecture Slides and more Slides Web Design and Development in PDF only on Docsity! Web Design & Development Lecture 19 Docsity.com Java Graphics 2 Docsity.com Last Example Code: MyPanel.java import javax.swing.*; import java.awt.*; public class MyPanel extends JPanel { public void paintComponent(Graphics g){ super.paintComponent(g); // erasing behaviour Graphics2D g2 = (Graphics2D)g; g2.drawRect(20,20,20,20); g2.setColor(Color.blue); g2.fillOval(50,50,20,20); g2.drawString("Hello World", 120, 50); } } Docsity.com Last Example Code: Test.java import javax.swing.*; import java.awt.*; public class Test{ JFrame f; MyPanel p; public Test1(){ f = new JFrame(); Container c = f.getContentPane(); c.setLayout(new BorderLayout()); p = new MyPanel(); c.add(p); f.setSize(400,400); f.setVisible(true); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } // end constructor Docsity.com Last Example Code: Test.java public static void main(String args[ ]){ Test1 = new Test(); } } // end class Docsity.com • Yesterday we have shown you a tennis game. • Problem, How to code the paddle movement ? • We will do it using mouse. • Try it using Keys Docsity.com Coordinate System • Upside-down Cartesian • Ywindow = height - Ycartesian (0,0) (width,0) (0,height) (width, height) X-axis Y-axis Docsity.com Live Output Docsity.com Example Code: Test.java f.setSize(400,400); f.setVisible(true); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); Handler h = new Handler (); p.addMouseMotionListener(h); } // end constructor public class Handler extends MouseMotionAdapter{ public void mouseDragged(MouseEvent me){ p.mX = me.getX() ; p.mY = me.getY() ; p.repaint() ; } } Docsity.com Example Code: Test.java public static void main(String args[ ]){ Test t = new Test( ); } } // end class Docsity.com Example Code: MyPanel.java import javax.swing.*; import java.awt.*; public class MyPanel extends JPanel { int mX = 200; int mY = 0; public void paintComponent(Graphics g){ super.paintComponent(g); // erasing behaviour Graphics2D g2 = (Graphics2D)g; g2.setColor(Color.blue); g2.fillOval(mX, mY, 20, 20); } } // end class Docsity.com Example Code: AnimTest.java public void actionPerformed(ActionEvent ae){ if (f.getWidth()-40 == p.mX) x= -5; if (f.getHeight()-40 == p.mY) y= -3; if (p.mX == 0 ) x = 5; if (p.mY == 0 ) y=3; p.mX+=x; p.mY+=y; p.repaint() ; } Docsity.com Example Code: AnimTest.java public static void main(String args[ ]){ AnimTest at = new AnimTest( ); } } // end class Docsity.com Live Output Docsity.com
Docsity logo



Copyright © 2024 Ladybird Srl - Via Leonardo da Vinci 16, 10126, Torino, Italy - VAT 10816460017 - All rights reserved