Spur löschen.

Status
Nicht offen für weitere Antworten.

Suckly0

Mitglied
ich will hier von links nach rechts die zahlen 1-3 auf ein panel schreiben.
ich will das es aussieht als würden sie wandern, doch die spur löscht sich nicht.
ich habe es mit XOR-Mode versucht doch das funktioniert nicht ganz.
wie schaff ich es das sich die "spur" löscht ?




Code:
import java.awt.Color;
import java.awt.Graphics;
/*
 * StringGUI.java
 *
 * 
 */

/**
 *
 * @author  alle
 */
public class StringGUI extends javax.swing.JFrame implements Runnable

    {
    Graphics g;
    Thread t;
    int x;
    int y;
    Color c;
    /** Creates new form StringGUI */
    public StringGUI() 
    {
        initComponents();
        g = pnString.getGraphics();
        t = new Thread(this);
        x = 0;
        y =60;
    }
    


    private void OnStart(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_OnStart
    t.start();
        
    }//GEN-LAST:event_OnStart
    

    
    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new StringGUI().setVisible(true);
            }
        });
    }

    public void run() 
    {
     while(true)
     {
         
          
         
         g.drawString("1",x,y);
         g.drawString("2",x+8,y);
         g.drawString("3",x+16,y);
        
         x = x+20;

         g.setXORMode(Color.BLACK);

         try 
            {
                t.sleep(500);
            } 
            catch (InterruptedException ex) 
            {
                ex.printStackTrace();
            }
     }
     
     
    }

    
}
 

Marco13

Top Contributor
getGraphics auf Components ist fast immer falsch.
Code:
class PanelMitWandernderNummer extends JPanel
{
    private String nummerString;
    private int x, y;

    public void paintComponent(Graphics g)
    {
        super.paintComponent(g);
        g.drawString(nummerString, x, y);
    }
}
das legst du in deinen Frame, und in dem Thread setzt du nur "nummerString", x und y neu und ruft repaint() auf.
 

Maeher

Bekanntes Mitglied
Für eine vernünftige Darstellung würde ich in ein BufferedImage zeichnen und dieses komplett in dein Fenster zeichnen und das Bild anschließend komplett mit deiner Hintergrundfarbe übermalen und die Texte neu zeichnen und erst dann wieder ins Fenster schreiben.
Ständiges direktes Zeichnen in Oberflächenelemente sieht meist nicht befriedigend aus.
 

Suckly0

Mitglied
in meiner run methode steht jetzt nur mehr

Code:
public void run()
{
 

      sc .paintComponent(g);
      this.repaint();
}


aber jetzt zeichnet er gar nichts mehr wegen dem repaint()

soll ich das repaint mit this.repaint() aufrufen oder mit JPanel.repaint() ?
 

Maeher

Bekanntes Mitglied
repaint() ruft indirekt die paintComponent() mit dem richtigen Graphics-Objekt auf. Du solltest diese normalerweiße nie manuell aufrufen.
 

Marco13

Top Contributor
Code:
public void run()
{
    int nummer = 1;
    while (true)
    {
        panelMitWandernderNummer.setNummerString(String.valueOf(nummer));
        panelMitWandernderNummer.setNummerPosition(x,y);
        this.repaint();
        try { ... sleep ... }
        nummer++;
        x += 8;
    }

}
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
H 2D-Grafik BufferStrategy zieht spur hinter sich her AWT, Swing, JavaFX & SWT 3
A 2D-Grafik Zeichnen einer sich bewegenden Box mit BufferStrategy zieht Spur AWT, Swing, JavaFX & SWT 2
W Element aus comboBox mit observableList löschen AWT, Swing, JavaFX & SWT 3
ExceptionOfExpectation Mit einer laufenden GUI Applikation eine Datei in dem Rechner löschen AWT, Swing, JavaFX & SWT 2
Fragerjava Frame inhalt komplett löschen AWT, Swing, JavaFX & SWT 4
missy72 JavaFX CellFactory deaktivieren, oder löschen AWT, Swing, JavaFX & SWT 2
N JavaFX Tableview nach Löschen von Element falscher Index AWT, Swing, JavaFX & SWT 4
C Swing Component bei Doppelklick löschen AWT, Swing, JavaFX & SWT 4
H JTabel Inhalt löschen AWT, Swing, JavaFX & SWT 1
J JavaFX Löschen im Tabelview macht Problem AWT, Swing, JavaFX & SWT 15
R Swing Ein gezeichneten String aus dem JFrame löschen AWT, Swing, JavaFX & SWT 5
F AWT awt KeyEvent - Zeichen direkt nach Eingabe löschen AWT, Swing, JavaFX & SWT 2
B JavaFX RadioButtons aus ToggleGroup löschen AWT, Swing, JavaFX & SWT 7
I GEmaltes BufferedImage löschen AWT, Swing, JavaFX & SWT 3
M JavaFX Altes Fenster (FXML Datei) löschen AWT, Swing, JavaFX & SWT 16
T Swing JTable valueChanged datensatz löschen AWT, Swing, JavaFX & SWT 1
J Panel auf Frame löschen und neues Panel Hinzufügen AWT, Swing, JavaFX & SWT 4
L Komplettes Löschen SWT vom System AWT, Swing, JavaFX & SWT 6
D JavaFX observablelist löschen AWT, Swing, JavaFX & SWT 3
H Swing Waypoints in JXMapKit löschen AWT, Swing, JavaFX & SWT 1
LexeB4F JTable mehrere Zelle selektieren und inhalte Löschen.. Ideen gesucht AWT, Swing, JavaFX & SWT 1
thobren JavaFX Ecken bei radius löschen AWT, Swing, JavaFX & SWT 2
C Swing JTextField Funktion zuweisen - Löschen von Buchstaben/Sonderzeichen AWT, Swing, JavaFX & SWT 6
G JPanel komponente Löschen AWT, Swing, JavaFX & SWT 7
A JFace Wizard: Ist es möglich eine Page zu löschen? AWT, Swing, JavaFX & SWT 2
J Text bei Eingabe löschen AWT, Swing, JavaFX & SWT 5
M Zeichnen ohne vorherige Linien zu löschen AWT, Swing, JavaFX & SWT 2
I Objekte aus contentPane löschen funktioniert nicht AWT, Swing, JavaFX & SWT 3
X AWT Text der mit Graphics "drawString(...)" geschreiben wurde wieder löschen. AWT, Swing, JavaFX & SWT 6
llabusch Prüfen ob JMenu leer ist & löschen AWT, Swing, JavaFX & SWT 1
N AWT Markierte Zeile jList aus mySQL DB löschen AWT, Swing, JavaFX & SWT 2
TheJavaKid JTextField: Reine Domain herausfiltern, sonst Inhalt löschen AWT, Swing, JavaFX & SWT 1
M JTable horizontale scrollbar löschen AWT, Swing, JavaFX & SWT 3
Bluedaishi JTable alle Zeilen löschen AWT, Swing, JavaFX & SWT 7
I ausgewählte Zeile mit Hilfe der Tastatur löschen! AWT, Swing, JavaFX & SWT 3
I JTable Inhalte löschen ohne den JTable zu verändern! AWT, Swing, JavaFX & SWT 5
I 2D-Grafik Shape aus BufferedImage "löschen" AWT, Swing, JavaFX & SWT 2
J Einträge aus Table löschen ohne Exception AWT, Swing, JavaFX & SWT 6
A 2D-Grafik Panel inhalt löschen AWT, Swing, JavaFX & SWT 5
H JCombobox inhalt löschen AWT, Swing, JavaFX & SWT 17
earlgrey_tea JTable Zelleninhalt beim Editieren löschen AWT, Swing, JavaFX & SWT 5
Kenan89 removeAll, um alles in einem JPanel zu löschen AWT, Swing, JavaFX & SWT 10
P Listenelemente über Checkbox löschen AWT, Swing, JavaFX & SWT 6
Ollek Swing JTable - Zeile löschen mit AbstractTableModel AWT, Swing, JavaFX & SWT 20
S Swing JTable Zeilen löschen AWT, Swing, JavaFX & SWT 21
4 AWT bestimmte Objekte zeichnen und löschen AWT, Swing, JavaFX & SWT 8
A JTable Zelle markieren von bis und Löschen AWT, Swing, JavaFX & SWT 6
S Swing AWT-Exception bei JTable mit JComboBox beim Löschen der letzten Zeile AWT, Swing, JavaFX & SWT 3
C JFrame - Löschen und neu füllen AWT, Swing, JavaFX & SWT 9
E Swing JTable Inhalte löschen..Was ist Sinnvoll? AWT, Swing, JavaFX & SWT 5
L Inhalt einer table löschen AWT, Swing, JavaFX & SWT 2
H Markierte Zeile löschen AbstractTableModel AWT, Swing, JavaFX & SWT 10
M [erledigt] Bestimmte Zeile aus JTextArea löschen AWT, Swing, JavaFX & SWT 3
F Swing JTable: Problem beim zeile löschen AWT, Swing, JavaFX & SWT 3
M Swing jList Auswahl löschen AWT, Swing, JavaFX & SWT 2
Semox Swing Kreis löschen durch Mausklick in der Nähe AWT, Swing, JavaFX & SWT 2
B Swing JList Daten löschen AWT, Swing, JavaFX & SWT 13
Pithecanthropus Swing Vordefinierten KeyStroke löschen AWT, Swing, JavaFX & SWT 3
S Java3D: Alle Objekte in BranchGroup löschen während Laufzeit AWT, Swing, JavaFX & SWT 3
J ArrayList Datensätze komplett löschen AWT, Swing, JavaFX & SWT 8
L ArrayList Wert löschen klappt nicht AWT, Swing, JavaFX & SWT 11
A Tabellen Spalte löschen AWT, Swing, JavaFX & SWT 6
S Comobox löschen AWT, Swing, JavaFX & SWT 10
U LayoutManager [GBL] Component aus einer Zelle löschen AWT, Swing, JavaFX & SWT 2
R JTable Zeile löschen AWT, Swing, JavaFX & SWT 4
B Fadenkreuze löschen und nicht "verstecken" AWT, Swing, JavaFX & SWT 10
X Keyevents nach Beartbeitung löschen AWT, Swing, JavaFX & SWT 2
E Spalte in JTable löschen AWT, Swing, JavaFX & SWT 4
hdi Swing JTable: Löschen vom Daten im Model AWT, Swing, JavaFX & SWT 7
Z JTextField Text löschen AWT, Swing, JavaFX & SWT 1
D eigenes Tablemodel, Zeile löschen ArrayindexOOB excp AWT, Swing, JavaFX & SWT 4
Junker Fensterinhalt vor ausführen von repaint komplett löschen. AWT, Swing, JavaFX & SWT 2
A Swing JTree Tree Node löschen AWT, Swing, JavaFX & SWT 2
E Graphics2D: altes Objekt löschen, wenn repaint aufgerufen wird AWT, Swing, JavaFX & SWT 7
M JTexField löschen AWT, Swing, JavaFX & SWT 3
Meldanor JTables - Zeilen hinzufügen/löschen AWT, Swing, JavaFX & SWT 4
M brauche Hilfe um Einträge aus Jlist zu löschen AWT, Swing, JavaFX & SWT 4
Q markierte mails löschen AWT, Swing, JavaFX & SWT 5
C Spalte aus JTable löschen AWT, Swing, JavaFX & SWT 8
nadal15 JTable und ArrayList - selected rows löschen AWT, Swing, JavaFX & SWT 6
F Per KeyListener Zeilen aus JTable löschen AWT, Swing, JavaFX & SWT 9
A Element aus einer JList löschen AWT, Swing, JavaFX & SWT 5
P [JTree] Icon für Nodes und Leafs ändern bzw. löschen AWT, Swing, JavaFX & SWT 2
hdi super.paintComponent(g); soll nicht alles löschen AWT, Swing, JavaFX & SWT 2
O Fensterinhalt löschen und neu generieren AWT, Swing, JavaFX & SWT 2
P Canvas Inhalt löschen AWT, Swing, JavaFX & SWT 4
W Node aus JTree löschen AWT, Swing, JavaFX & SWT 2
J JTable - Wie Zeilen löschen ? AWT, Swing, JavaFX & SWT 8
Saxony JTextPane - letzte Zeile löschen AWT, Swing, JavaFX & SWT 4
A Zeile in JTable einfügen/löschen- Tutorial gesucht AWT, Swing, JavaFX & SWT 9
W Elemente aus JPanel bzw. GridBag löschen und ersetzen AWT, Swing, JavaFX & SWT 18
T Per Dialog Textfelder löschen AWT, Swing, JavaFX & SWT 4
T Linien zeichnen und wieder löschen AWT, Swing, JavaFX & SWT 9
H Fileinhalt löschen und SWT Dialog erstellen AWT, Swing, JavaFX & SWT 3
G Features nach Update löschen AWT, Swing, JavaFX & SWT 2
G Canvas löschen AWT, Swing, JavaFX & SWT 15
L Probleme mit Löschen von JPanels AWT, Swing, JavaFX & SWT 2
L Alle Inhalte in BorderLayout.CENTER löschen? AWT, Swing, JavaFX & SWT 2
P JTextArea - einzelne Zeile löschen bzw einfügn AWT, Swing, JavaFX & SWT 2
B Formatierungen eines JTextPane löschen AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben