Hallo, habe hier eine Digitaluhr gebaut, aber Eclipse hat da Probleme. Kann mir da jemand weiterhelfen ?
Code:
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import javax.swing.*;
class Segment7 extends Canvas
{ private static final long serialVersionUID = 1L;
private int digit;
private boolean hasfocus;
private int polysx[][] = {
{ 1, 2, 8, 9, 8, 2}, // Segment 0
{ 9,10,10, 9, 8, 8}, // Segment 1
{ 9,10,10, 9, 8, 8}, // Segment 2
{ 1, 2, 8, 9, 8, 2}, // Segment 3
{ 1, 2, 2, 1, 0, 0}, // Segment 4
{ 1, 2, 2, 1, 0, 0}, // Segment 5
{ 1, 2, 8, 9, 8, 2}, // Segment 6
};
private int polysy[][] = {
{ 1, 0, 0, 1, 2, 2}, // Segment 0
{ 1, 2, 8, 9, 8, 2}, // Segment 1
{ 9,10,16,17,16,10}, // Segment 2
{17,16,16,17,18,18}, // Segment 3
{ 9,10,16,17,16,10}, // Segment 4
{ 1, 2, 8, 9, 8, 2}, // Segment 5
{ 9, 8, 8, 9,10,10}, // Segment 6
};
private int digits[][] = {
{1,1,1,1,1,1,0}, // Ziffer 0
{0,1,1,0,0,0,0}, // Ziffer 1
{1,1,0,1,1,0,1}, // Ziffer 2
{1,1,1,1,0,0,1}, // Ziffer 3
{0,1,1,0,0,1,1}, // Ziffer 4
{1,0,1,1,0,1,1}, // Ziffer 5
{1,0,1,1,1,1,1}, // Ziffer 6
{1,1,1,0,0,0,0}, // Ziffer 7
{1,1,1,1,1,1,1}, // Ziffer 8
{1,1,1,1,0,1,1} // Ziffer 9
};
void zeitHolen(){
Calendar c = new GregorianCalendar();
int std = c.get(Calendar.HOUR);
int min = c.get(Calendar.MINUTE);
int sec = c.get(Calendar.SECOND);
// Abfrage zum Uhrzeit-Ckeck
for(int z=0; z==24; z++)
{
if(std == z)
{
for(int g=0; g<=6; g++){ // Segment Check
int seg1[][] = polysx[z][g]; // Polysx-Werte neuem Array zuweisen
int seg2[][] = polysy[z][g]; // Polysy-Werte neuem Array zuweisen
for(int d=0; d<=9; d++){ // Ziffern Check
int dig[][] = digits[d][g]; // Digits-Werte neuem Array zuweisen
}
}
}
}
}
public Segment7()
{
this(0);
}
public Segment7(int digit)
{
super();
}
public static void main (String[]args)
{
JFrame fenster = new JFrame();
Segment7 grafik = new Segment7();
fenster.add(grafik,BorderLayout.CENTER);
fenster.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
fenster.setLocationByPlatform(true);
fenster.setVisible(true);
fenster.setSize(300,400);
}
public Dimension getPreferredSize()
{
return new Dimension(5*10,5*18);
}
public Dimension getMinimumSize()
{
return new Dimension(1*10,1*18);
}
public boolean isFocusTraversable()
{
return true;
}
public void paint(Graphics g)
{
Color darkred = new Color(127,0,0);
Color yellow = new Color(255,255,0);
// dx und dy berechnen
int dx = getSize().width / 10;
int dy = getSize().height / 18;
// Hintergrund
g.setColor(darkred);
g.fillRect(0,0,getSize().width,getSize().height);
g.setColor(yellow);
for (int i=0; i < 7; ++i) { // alle Segmente
if (digits[digit][i] == 1) {
Polygon poly = new Polygon();
for (int j = 0; j < 6; ++j) { // alle Eckpunkte
poly.addPoint(dx*seg1[i][j],dy*seg2[i][j]);
}
g.fillPolygon(poly);
}
}
// Trennlinien
g.setColor(darkred);
g.drawLine(0,0,dx*10,dy*10);
g.drawLine(0,8*dy,10*dx,18*dy);
g.drawLine(0,10*dy,10*dx,0);
g.drawLine(0,18*dy,10*dx,8*dy);
}
public int getValue()
{
return digit;
}
public void setValue(int value)
{
digit = value % 10;
}
}