rechtecke als hintergrund / thread

Status
Nicht offen für weitere Antworten.
J

javaner

Gast
guten tag.

habe noch 2 fragen zu meiner programmierten uhr. wie kann ich die 4 rechtecke als hintergrund definieren? damit die uhrziffern auf dem rechteck zu sehen sind und nicht von diesen überdeckt werden. trotz des threads flimmert mir der hintergrund irgendwie. gibt es da eine einfache variante zum das verhindern? vielen dank.

import java.awt.*;
import java.applet.*;
import java.util.*;

public class AnalogUhr extends Applet
{
/**Variablen deklarieren*/
Image time;
Graphics2D gtime;
Calendar date;

/**Zentrum und Radius*/
int x=125, y=100;

/**Hintergrund definieren*/
public void init() {

setBackground(new Color(255,255,255));

/**Thread zum anhalten des Applets. verhindert das flimmern*/
new Thread(new Runnable() {
public void run() {
while (true) {
try {Thread.sleep(1000);} catch (InterruptedException e) {}
repaint();
}
}}).start(); }

public void paint(Graphics g)
{
/**Uhr generieren und updaten*/
if (time==null) {
time=createImage(this.getSize().width, this.getSize().height);
gtime=(Graphics2D)time.getGraphics();
}
gtime.clearRect(0,0,this.getSize().width, this.getSize().height);

/**Zeiger Farbe und Form)*/
gtime.setColor(Color.black);
gtime.drawOval(x-2,x-2,4,4);

/**akutelle Systemzeit implementieren*/
date = new GregorianCalendar();

int hours = date.get(Calendar.HOUR_OF_DAY);
int minutes = date.get(Calendar.MINUTE);
int seconds = date.get(Calendar.SECOND);
int day = date.get(Calendar.DATE);
int month = (date.get(Calendar.MONTH))+1;
int year = date.get(Calendar.YEAR);


/**Striche bei 3, 6, 9 und 12 Uhr erstellen*/
for (int i=0;i<4;i++) {
gtime.drawLine(
x+(int)((y-7)*Math.cos(Math.toRadians(90*i))),
x+(int)((y-7)*Math.sin(Math.toRadians(90*i))),
x+(int)(y*Math.cos(Math.toRadians(90*i))),
x+(int)(y*Math.sin(Math.toRadians(90*i))));
}
/**Striche bei jeder Stunde erstellen*/
for (int i=0;i<12;i++) {
gtime.drawLine(
x+(int)((y-5)*Math.cos(Math.toRadians(30*i))),
x+(int)((y-5)*Math.sin(Math.toRadians(30*i))),
x+(int)(y*Math.cos(Math.toRadians(30*i))),
x+(int)(y*Math.sin(Math.toRadians(30*i))));
}
/**Stundenzeiger anzeigen*/
gtime.drawLine(
x,x,x+(int)(60*Math.cos(Math.toRadians(hours%12*30+minutes/2.0-90))),
x+(int)(60*Math.sin(Math.toRadians(hours%12*30+minutes/2.0-90))));

/**Minutenzeiger anzeigen*/
gtime.drawLine(
x,x,x+(int)(85*Math.cos(Math.toRadians(minutes*6-90))),
x+(int)(85*Math.sin(Math.toRadians(minutes*6-90))));

/**Sekundenzeiger anzeigen*/
gtime.setColor(new Color(170,170,170));
gtime.drawLine(
x,x,x+(int)(90*Math.cos(Math.toRadians(seconds*6-90))),
x+(int)(90*Math.sin(Math.toRadians(seconds*6-90))));

g.drawImage (time, 0, 0, this);

/**anzeige aktuelles datum und uhrzeit digital*/
g.drawString(""+day+". "+month+". "+year, 60,270);
g.drawString(""+hours+". "+minutes+". "+seconds, 130,270);

/**schweizerkreuz und rahmen*/
g.setColor(Color.red);
g.fillRect(0,0,85,85);
g.fillRect(160,0,85,85);
g.fillRect(0,160,85,85);
g.fillRect(160,160,85,85);
g.setColor(Color.black);
g.drawRect(0,0,245,245);

}
/**überschreiben und updaten*/
public void update(Graphics g) {paint(g);}
}
 

André Uhres

Top Contributor
javaner hat gesagt.:
..wie kann ich die 4 rechtecke als hintergrund definieren?
damit die uhrziffern auf dem rechteck zu sehen sind und nicht von diesen überdeckt werden.
trotz des threads flimmert mir der hintergrund irgendwie.
gibt es da eine einfache variante zum das verhindern? ..
Du musst nur die Rechtecke zuerst zeichnen und zwar auf gtime, nicht auf g sonst flimmert's.
 
J

javaner

Gast
danke. das funnktioniert soweit. die digitale anzeige der zeit und dem datum flimmert leider immer noch. gibt es da eine simple lösung?

danke vielmals.
 
J

javaner

Gast
aha die gdrawstrings auch auf gtime umbenamsen. funktioniert einwandfrei.

danke und schönes wochenende.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Kollision zweier Rechtecke, Schnittpunkte bestimmen Java Basics - Anfänger-Themen 25
K Rechtecke rekursiv zeichnen Java Basics - Anfänger-Themen 20
B Beliebig viele Rechtecke erzeugen Java Basics - Anfänger-Themen 5
K zwei Rechtecke auf Berührung prüfen Java Basics - Anfänger-Themen 2
S mehrere Rechtecke in ein Panel Java Basics - Anfänger-Themen 2
M flaeche 2er schneidender rechtecke Java Basics - Anfänger-Themen 6
S Rechtecke zu moeglichst groesseren Rechtecken kombinieren? Java Basics - Anfänger-Themen 7
L rechtecke zeichnen anhand von matrix Java Basics - Anfänger-Themen 27
B wie kann man mehrere rechtecke erzeugen? Java Basics - Anfänger-Themen 3
I Kollision zweier Rechtecke Java Basics - Anfänger-Themen 9
H Rechtecke, Quadrate. Was soll ich machen? Java Basics - Anfänger-Themen 2
S Gezeichnete Rechtecke werden nicht dargestellt Java Basics - Anfänger-Themen 15
A Schnitt zweier Rechtecke ermitteln Java Basics - Anfänger-Themen 2
Fats Waller Farben mixen für den Hintergrund ? Java Basics - Anfänger-Themen 1
Elyt JFrame in den Hintergrund verschieben Java Basics - Anfänger-Themen 3
3 JFrame immer im Hintergrund Java Basics - Anfänger-Themen 1
C JOptionPane tritt manchmal bei Plugin in den Hintergrund Java Basics - Anfänger-Themen 2
P SystemTray: Programm sol im Hintergrund weiter laufen Java Basics - Anfänger-Themen 30
T Wenn JFrame Textfelder Hintergrund Grün dann... (if) Java Basics - Anfänger-Themen 3
J Hintergrund bei einem Schachfeld Java Basics - Anfänger-Themen 1
B Greenscreen (grüner Hintergrund ersetzen mit Bild) Java Basics - Anfänger-Themen 49
N Hintergrund image mit .setContentPane Java Basics - Anfänger-Themen 6
U Website Quelltext auslesen - Javaskripte im Hintergrund? Java Basics - Anfänger-Themen 4
H Funktion in Hintergrund und Vordergrund ausführen Java Basics - Anfänger-Themen 11
J Panel auf Hintergrund Java Basics - Anfänger-Themen 5
M hintergrund in jframe festlegen Java Basics - Anfänger-Themen 4
K Android 2d engine mit fortlaufendem hintergrund Java Basics - Anfänger-Themen 1
H Shell Command, im Hintergrund Java Basics - Anfänger-Themen 2
D Hintergrund jpg auf Panel Java Basics - Anfänger-Themen 3
M Website im Hintergrund laden Java Basics - Anfänger-Themen 5
S Applet-Objekt ist vor dem Hintergrund Java Basics - Anfänger-Themen 11
H JPanel Hintergrund transparent setzen? Java Basics - Anfänger-Themen 10
D Java hintergrund erstellen button positionierung Java Basics - Anfänger-Themen 9
B Funktionen programmieren, die im Hintergrund aktiv sind Java Basics - Anfänger-Themen 2
R Threads GUI über Hintergrund-Thread aktualisieren Java Basics - Anfänger-Themen 6
E JButton Hintergrund / Rahmen entfernen? Java Basics - Anfänger-Themen 4
L Erste Schritte 2 Button und der Hintergrund Java Basics - Anfänger-Themen 9
B Hintergrund ändern Java Basics - Anfänger-Themen 3
K Bild als Hintergrund in einem Swing Fenster Java Basics - Anfänger-Themen 21
I Bild in den Hintergrund Java Basics - Anfänger-Themen 6
D JMenuBar und Hintergrund eines Frames Java Basics - Anfänger-Themen 2
A Hintergrund erstellen Java Basics - Anfänger-Themen 2
G hintergrund wird nicht gezeichnet bei paint() Java Basics - Anfänger-Themen 3
K Hintergrund ändern Java Basics - Anfänger-Themen 5
C Frage für Programm mit Dauerschleife im Hintergrund Java Basics - Anfänger-Themen 11
U Neuling: Hintergrund bewegen Java Basics - Anfänger-Themen 14
I Balken, mit Bild im Hintergrund, zeichen Java Basics - Anfänger-Themen 4
M JMenu im Hintergrund Java Basics - Anfänger-Themen 8
Y Programm im Hintergrund stellen Java Basics - Anfänger-Themen 5
M Frame zeigt Desktop als Hintergrund Java Basics - Anfänger-Themen 2
A JPanel: Zeichnen funktioniert nicht - Nur grauer Hintergrund Java Basics - Anfänger-Themen 9
E Ich will doch nur einen Hintergrund! Java Basics - Anfänger-Themen 8
H KeyListener bei Frame im Hintergrund Java Basics - Anfänger-Themen 3
G Bilder in den Hintergrund eines Applets einfügen Java Basics - Anfänger-Themen 16
B jlist hintergrund Java Basics - Anfänger-Themen 5
G Hintergrund Java Basics - Anfänger-Themen 12
G Tastenanschläge aus dem Hintergrund erfassen Java Basics - Anfänger-Themen 3
W Bilder als Hintergrund bei Textfeldern? Java Basics - Anfänger-Themen 2
R Möchte einen anderen Hintergrund, weis nicht wie? Java Basics - Anfänger-Themen 7
J Bild im Hintergrund Java Basics - Anfänger-Themen 8
jacquipre Eine Suchmethode im Hintergrund laufen lassen (Threads?) Java Basics - Anfänger-Themen 12
G Hintergrund verdeckt Buttons Java Basics - Anfänger-Themen 6
P task im hintergrund? Java Basics - Anfänger-Themen 11
U Gekachelter Hintergrund (ehem. JLabel html zuweisen) Java Basics - Anfänger-Themen 7
A Programm in den Hintergrund "verschieben" Java Basics - Anfänger-Themen 4
I Hintergrund in Applikation einbinden Java Basics - Anfänger-Themen 3
Leyla Thread isInterrupt Java Basics - Anfänger-Themen 18
P Meldung aus Java-Klasse in Thread an aufrufende Klasse Java Basics - Anfänger-Themen 1
A Thread XML-Dateien zusammenfügen Java Basics - Anfänger-Themen 11
F influxdb Upload in eigenem Thread Java Basics - Anfänger-Themen 2
frager2345 Thread - Methoden synchronized deklarieren Java Basics - Anfänger-Themen 10
berserkerdq2 Größter unterschied von extends thread und implements runnable? Java Basics - Anfänger-Themen 2
T Thread beenden aus zweiter Klasse Java Basics - Anfänger-Themen 4
A Thread - Synchronized Java Basics - Anfänger-Themen 10
A Thread Producer - Consumer Java Basics - Anfänger-Themen 1
A Thread-Semhapore Java Basics - Anfänger-Themen 0
A Thread Exchanger Java Basics - Anfänger-Themen 22
A Thread-Cyclicbarrier Java Basics - Anfänger-Themen 4
B In einem Thread Endlosschleife beenden Java Basics - Anfänger-Themen 19
A Thread-Verklemmung Java Basics - Anfänger-Themen 10
A Thread-Schreibe-Lese-Problem Java Basics - Anfänger-Themen 4
A Thread find number Java Basics - Anfänger-Themen 8
F Thread.sleep() Java Basics - Anfänger-Themen 5
F Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 11 at main.main(main.java:11) Java Basics - Anfänger-Themen 2
A Thread Java Basics - Anfänger-Themen 3
M Exception in thread "main" java.util.NoSuchElementException Java Basics - Anfänger-Themen 2
A Thread Java Basics - Anfänger-Themen 8
B Compiler-Fehler Fehlermeldung Exception in thread, falsche Eingabewert Java Basics - Anfänger-Themen 2
M Thread-Zustände Java Basics - Anfänger-Themen 6
CptK For-Schleife in Thread nach jedem Durchlauf pausieren Java Basics - Anfänger-Themen 35
S Kriege Fehler "Exception in thread" beim Benutzen von SubStrings. Java Basics - Anfänger-Themen 2
B Endlosschleife Thread sauber beenden Java Basics - Anfänger-Themen 19
D Java Thread wartet nur ein mal Java Basics - Anfänger-Themen 1
D Java Thread wartet nur ein mal Java Basics - Anfänger-Themen 0
O Exception in thread "main" java.lang.ArithmeticException: / by zero Java Basics - Anfänger-Themen 4
C Thread und TimerTask, Verstädnisproblem Java Basics - Anfänger-Themen 10
amgadalghabra Sorting Thread Launcher Java Basics - Anfänger-Themen 3
B Exception in thread "AWT-EventQueue-0" java.util.ConcurrentModificationException Java Basics - Anfänger-Themen 8
A Thread Java Basics - Anfänger-Themen 4
A Thread Java Basics - Anfänger-Themen 1

Ähnliche Java Themen

Neue Themen


Oben