Repaint in Java2D/Graphics
-
Hi Leudz,
ich wollt mal fragen wie ich (per Knopfdruck, Button-Actionlistener) eine repaint-methode oder dergleichen aufrufe. Ich hab schon danach gegoogled, hab auch eine methode gefunden ABER diese lässt lediglich den Screen flackern und auf knopfdruck passiert nichts.
THX in advance - Chaoz
-
Das es flackert, liegt daran, dass du kein double buffering verwendest.
-
milkandalcohol schrieb:
Das es flackert, liegt daran, dass du kein double buffering verwendest.
ja ok, das weiss ich (nun) auch ^^
danke..
allerdings...ich will ja NUR EINMAL aktualisieren...
d.h.
Grafik zeichnen => Button Klicken => Grafik neuzeichnen(es handelt sich dabei um einen Routenplaner, wobei er auf Knopfdruck den richtigen Weg einfärben soll.)
-
ruf halt das selbe auf wie sonst in dem thread
-
private JFrame getframe() { if(frm_main == null) { frm_main = new JFrame() { public void paint(Graphics g) { super.paint(g); Graphics2D g2 = (Graphics2D) g; setGraphics(g2); g2.draw ... //OBJEKTE ZEICHNEN } }; frm_main.setTitle("Titel"); //restliche Attribute des frm_main setzen return frm_main; } btn_start.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent e) { if(btn_start.getText().equals("Start")) { Graphics g = getGraphics(); //REDRAW? }
jetzt ist nur die Frage wie ich (im Actionlistener des Buttons auf Knopfdruck) die redraw aufrufe.=(
thx in advance!