Describe the following Java code. Give screenshots of the image it produces
public class main{
public static void main(String[] args{
new MyFrame();
}
}
import javax.swing.*;
public class MyFrame extends JFrame{
MyPanel panel;
MyFrame(){
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.add(panel);
this.pack();
this.setLocationRelativeTo(null);
this.setVisible(true);
}
}
import java.awt.*;
import.javax.swing.*;
public class MyPanel extends JPanel{
//Image Image;
MyPanel(){
//image=new ImageIcon("sky.png").getImage();
this.setPreferredSize(new Dimension(500,500));
}
public void paint(Graphics g){
Graphics2D g2D = (Graphics2D) g;
//g2D.drawImage(image,0,0,null);
g2D.setPaint(Color.blue);
g2D.setStroke(new BasicStroke(5));
g2D.drawLine(0,0,500,500);
//g2D.setPaint(Colo.pink);
//g2D.drawRect(0,0,100,200);
//g2D.fillRect(0,0,100,200);
//g2D.setPaint(Color.orange);
//g2D.drawOval(0,0,100,100);
//g2D.fillOval(0,0,100,100);
//g2D.setPaint(color.red);
//g2D.drawArc(0,0,100,100,0,180);
//g2D.fillArc(0,0,100,100,0,180);
//g2D.setPaint(Color.white);
//g2D.fillArc(0,0,100,100,180,180);
//int[] xPoints = {150,250,350};
//int[] yPoints={300,150,300};
//g2D.setPaint(Color.yellow);
//g2D.drawPolygon(xPoints,yPoints,3);
//g2D.fillPolygon(xPoints,yPoints,3);
//g2D.setPaint(Color.magenta);
//g2D.setFont(new Font("Ink Free",Font.BOLD,50));
//g2D.drawString("U R A WINNER!:",50,50);
}
}
MyPanel is the drawing program.
It draws the following shapes.
1. It draws a diagonal line from top left to bottom right. g2D.drawLine(0, 0, 500, 500);
2. A rectangle in top left corner. g2D.drawRect(0,0,100,200);
3. It creates a circle and fills with orange color. g2D.drawOval(0,0,100,100);
4. It creates a semi-circle inside the circle with white color. g2D.fillArc(0,0,100,100,180,180);
5. It creates a triangle by drawing a polygon with 3 sides. g2D.drawPolygon(xPoints,yPoints,3);
6. All the images are placed in a sky background.
Following is the output of the program.
Following is the modified MyFrame.java
import javax.swing.*;
public class MyFrame extends JFrame {
MyPanel panel = new MyPanel();
MyFrame() {
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.add(panel);
this.pack();
this.setLocationRelativeTo(null);
this.setVisible(true);
}
}
Following is the modified MyPanel.java
import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import javax.swing.*;
public class MyPanel extends JPanel {
java.awt.Image image;
MyPanel() {
image=new ImageIcon("sky.png").getImage();
this.setPreferredSize(new Dimension(500, 500));
}
public void paint(Graphics g) {
Graphics2D g2D = (Graphics2D) g;
g2D.drawImage(image,0,0,null);
g2D.setPaint(Color.blue);
g2D.setStroke(new BasicStroke(5));
g2D.drawLine(0, 0, 500, 500);
g2D.setPaint(Color.pink);
g2D.drawRect(0,0,100,200);
g2D.fillRect(0,0,100,200);
g2D.setPaint(Color.orange);
g2D.drawOval(0,0,100,100);
g2D.fillOval(0,0,100,100);
g2D.setPaint(Color.red);
g2D.drawArc(0,0,100,100,0,180);
g2D.fillArc(0,0,100,100,0,180);
g2D.setPaint(Color.white);
g2D.fillArc(0,0,100,100,180,180);
int[] xPoints = {150,250,350};
int[] yPoints={300,150,300};
g2D.setPaint(Color.yellow);
g2D.drawPolygon(xPoints,yPoints,3);
g2D.fillPolygon(xPoints,yPoints,3);
g2D.setPaint(Color.magenta);
//g2D.setFont(new Font("Ink Free",Font.BOLD,50));
g2D.drawString("U R A WINNER!:",50,50);
}
}
Get Answers For Free
Most questions answered within 1 hours.