Public feed
#892561
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
class DigitPanel extends JPanel
{
int drawDigit;
public DigitPanel(int number)
{
this.drawDigit = number;
this.setPreferredSize(new Dimension(80,80));
}//end constructor
public void paintComponent(Graphics g)
{
super.paintComponent(g);
Graphics2D g2d = (Graphics2D)g;
//Change line thickness
g2d.setStroke(new BasicStroke(8));
// antialiasing on
RenderingHints renderHints =
new RenderingHints(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
renderHints.put(RenderingHints.KEY_RENDERING,
RenderingHints.VALUE_RENDER_QUALITY);
g2d.setRenderingHints(renderHints);
// end of antialiasing
switch(drawDigit)
{
case 1:
{
drawElement(g2d,1);
drawElement(g2d,2);
return;
}
case 2:
{
drawElement(g2d,5);
drawElement(g2d,3);
drawElement(g2d,6);
drawElement(g2d,2);
drawElement(g2d,7);
return;
}
case 3:
{
drawElement(g2d,5);
drawElement(g2d,3);
drawElement(g2d,6);
drawElement(g2d,4);
drawElement(g2d,7);
return;
}
case 4:
{
drawElement(g2d,1);
drawElement(g2d,6);
drawElement(g2d,3);
drawElement(g2d,4);
return;
}
case 5:
{
drawElement(g2d,5);
drawElement(g2d,1);
drawElement(g2d,6);
drawElement(g2d,4);
drawElement(g2d,7);
return;
}
case 6:
{
drawElement(g2d,5);
drawElement(g2d,1);
drawElement(g2d,2);
drawElement(g2d,7);
drawElement(g2d,4);
drawElement(g2d,6);
return;
}
case 7:
{
drawElement(g2d,5);
drawElement(g2d,3);
drawElement(g2d,4);
return;
}
case 8:
{
drawElement(g2d,1);
drawElement(g2d,2);
drawElement(g2d,3);
drawElement(g2d,4);
drawElement(g2d,5);
drawElement(g2d,6);
drawElement(g2d,7);
return;
}
case 9:
{
drawElement(g2d,5);
drawElement(g2d,1);
drawElement(g2d,6);
drawElement(g2d,3);
drawElement(g2d,4);
drawElement(g2d,7);
return;
}
case 0:
{
drawElement(g2d,1);
drawElement(g2d,2);
drawElement(g2d,5);
drawElement(g2d,3);
drawElement(g2d,4);
drawElement(g2d,7);
return;
}
}
}//End of paint component
//Draws an individual element of a digit
/* __ 5
* 1 | | 3
* -- 6
* 2 | | 4
*
* -- 7
*
*/
public void drawElement(Graphics g, int digit)
{
switch(digit)
{
//Vertical left top
case 1:
{
g.drawLine(5,0,5,32);
return;
}
//Vertical left bottom
case 2:
{
g.drawLine(5,44,5,82);
return;
}
//Vertical right top
case 3:
{
g.drawLine(50,0,50,32);
return;
}
//Vertical right bottom
case 4:
{
g.drawLine(50,44,50,82);
return;
}
//Horizontal top
case 5:
{
g.drawLine(16,4,38,4);
return;
}
//Horizontal middle
case 6:
{
g.drawLine(16,40,38,40);
return;
}
//Horizontal bottom
case 7:
{
g.drawLine(16,75,38,75);
return;
}
}
}//End drawElement method
//public int getDigits(String in)
// {
// }
}//end DigitPanel class