-
15.08.11 13:25 #1
- Registriert seit
- Aug 2011
- Beiträge
- 62
Hallo liebe Java Freunde,
Frage: wie akualisiere ich eine Grafik in einm JFrame.
Mein Code:
Das ist meine Paint:
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
public class MyPanel extends JComponent { public void calculateDrawing() { ... } public void paint(Graphics g) { super.paintComponent(g); Graphics2D g2 = (Graphics2D)g; calculateDrawing(); for (int i=0; i < 30; i++) { RectColor = new Color(Randomize(255),Randomize(255),Randomize(255)); g2.setStroke(new BasicStroke(8)); g2.setColor(RectColor); //g.fillRect(RectLeft, RectTop, RectWidth-1, RectHeight-1); if(sectionsInt[i][6]<=4) { RectTop = sectionsInt[i][0]; RectLeft = sectionsInt[i][1]; RectWidth = sectionsInt[i][2]; RectHeight = sectionsInt[i][3]; g2.drawLine(RectLeft, RectTop, RectWidth, RectHeight); } } } }
Das ist mein Main Programm:
Code java:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
public class Test5 extends JFrame implements ActionListener { MyPanel drawPanel= new MyPanel(); public final void initUI() { setLayout(null); Border b = BorderFactory.createLineBorder(Color.black); jPImage = new JPanel(); jPImage.setBounds(10,70,430,390); jPImage.setBorder(b); ... add(jPImage); } ... public void actionPerformed(ActionEvent ae) { Object obj = ae.getSource(); if(obj == jBUp) { drawPanel.setPreferredSize(new Dimension(430,390)); jPImage.add(drawPanel); jPImage.repaint(); } }
Bei ButtonDruck sollte die Grafik aktualisiert werden, wird aber nur leider einmal gezeichnet und danach nicht mehr aktualisiert!.
Was mache ich falsch? Kann mir jemand bitte eine richtiges Code Example posten, ich finde nichts passendes in verschiedensten Foren.
Danke im vorraus.
-
15.08.11 15:03 #2
Versuchs mal so:
Code java:1 2 3
public void actionPerformed(ActionEvent ae) { drawPanel.repaint(); }
Bitte die Code-Tags verwenden. Bei Java-Code: [java]...[/java]
Tutorials:
Automatisches erzeugen eines Inhaltsverzeichnisses (Javascript)
JAnimationPanel - Animationen für Swing/AWT
SWTRatingBar (Bewertungs-Composite) selbst programmieren
____________________________________________________________________________
Über eine Bewertung (Stern links unter dem Beitrag) oder ein Danke freue ich mich sehr.
-
15.08.11 15:18 #3
- Registriert seit
- Aug 2011
- Beiträge
- 62
danke vielmals, habe immer das JPanel repaintet und nicht die paint methode überschrieben.
-
15.08.11 15:33 #4SE Tutorials.de Gastzugang
Nein ... das war es nicht ... das Problem war das du immer wieder ein neues JComponent *denn deine Klasse erbt nicht von JPanel ... hier bitte genau auf den Code achten* hinzugefügt aber das Layout nicht mit Container.validate() aktualisiert.
Ähnliche Themen
-
JFrame alle 20 millisekunden aktualisieren
Von wahed132 im Forum Swing, Java2D/3D, SWT, JFaceAntworten: 7Letzter Beitrag: 20.01.09, 23:01 -
weicher Übergang einer Grafik in einem Menü
Von El_Chefe im Forum Javascript & AjaxAntworten: 0Letzter Beitrag: 19.08.08, 13:13 -
Aus einem JFrame anderes JFrame starten
Von maddos im Forum JavaAntworten: 3Letzter Beitrag: 09.08.07, 12:24 -
Ein JFrame aus einem anderem JFrame aufrufen!
Von Lautsprecher im Forum JavaAntworten: 1Letzter Beitrag: 14.11.05, 09:37 -
Grafik einer Dialogbasierten Anwendung aktualisieren
Von McGreg im Forum VisualStudio & MFCAntworten: 16Letzter Beitrag: 10.02.05, 10:06



1Danke


Zitieren
Login





