WinFuture-Forum.de: Java 2D: Glitch/Artefakt bei einfachem Zeichenprogramm - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Java 2D: Glitch/Artefakt bei einfachem Zeichenprogramm


#1 Mitglied ist offline   Der Kenner 

  • Gruppe: aktive Mitglieder
  • Beiträge: 574
  • Beigetreten: 30. Januar 05
  • Reputation: 0

geschrieben 21. März 2011 - 22:17

Hallo,

ich habe ein kleines Programm geschrieben, bei dem man bei gedrückter linker Maustaste auf einem JPanel Linien zeichnen kann. Das funktioniert auch problemlos, solange keine Farben ins Spiel kommen. Dazu habe ich ein zweites Fenster eingeführt, das per JColorChooser eine andere Zeichenfarbe auswählen lässt.

Hier nun ein Screenshot, auf dem mein Problem direkt einsichtig wird: Glitch
Wählt man nun eine Farbe und setzt einen ersten Strich in das Fenster, so erscheint dieser auch, allerdings auch ein Abbild des JColorChoosers. (Manchmal passiert dies auch ohne vorige Farbwahl.)

Vielleicht fällt einem von euch was dazu ein. Hier ist der Source (als Eclipse-Projekt).

Danke

Angehängte Datei(en)


Dieser Beitrag wurde von Der Kenner bearbeitet: 21. März 2011 - 22:17

0

Anzeige



#2 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.947
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 22. März 2011 - 09:05

Hmm...bei mir passiert das - auf meinem Linuxsystem - jedenfalls nicht.
java -version
java version "1.6.0_24"
Java(TM) SE Runtime Environment (build 1.6.0_24-b07)
Java HotSpot(TM) 64-Bit Server VM (build 19.1-b02, mixed mode)


Bis auf den "falschen" Main-Code fällt mir auf den ersten Blick nichts auf. Wobei ich nicht denke, dass es daran liegt, solltest du GUIs - wegen Threadsicherheit - immer wie folgt initialisieren:
public static void main(String[] args) {
  SwingUtilities.invokeLater(new Runnable() { // alternativ invokeAndWait(...)
	public void run() {
	  JFrame f = new JFrame();
	  f.setTitle("CraPaint");
	  ...
	  f.setVisible();
	}
  }
}

0

#3 Mitglied ist offline   Der Kenner 

  • Gruppe: aktive Mitglieder
  • Beiträge: 574
  • Beigetreten: 30. Januar 05
  • Reputation: 0

geschrieben 31. März 2011 - 17:03

Hi,
danke für deine Antwort und den Tipp. Tut mir Leid, dass meine Antwort so lange auf sich hat warten lassen

Aber auch mit dem abgeänderten Code tritt immer noch das gleiche Problem auf.

Meine Java-Version:

Zitat

> java.exe -version
java version "1.6.0_24"
Java™ SE Runtime Environment (build 1.6.0_24-b07)
Java HotSpot™ Client VM (build 19.1-b02, mixed mode, sharing)

Scheint nahezu identisch zu deiner zu sein. OS ist ein Windows 7 Professional x64
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0