Rectangles ausserhalb der paintComponent drawen!

Servo Herko

Aktives Mitglied
Hallo,
ich wollte wissen wie man z.b. ein Rectangle ausserhalb der paintComponent() methode drawen kann.
mein code:
Java:
public class Screen extends JLabel {
		@SuppressWarnings("static-access")
		protected void paintComponent(Graphics g) {
			super.paintComponent(g);
		}
		public void addRect() {
			g.drawRect(50, 50, 50, 50); //so funktioniert es leider nicht
		}
ich wüsste nicht wie man bei dem Grahics g immer was zu hauen kann!
 

Servo Herko

Aktives Mitglied
Ich wollte das jetzt nicht machen, da meine drawRect ja genau das gleiche ist.
nur zu test zwecken. Später würde ich es mit einem parameter machen, aber es geht überhaupt darum dem g etwas zu adden, was ich nicht hin bekomme...
 

butterbemme

Gesperrter Benutzer
Java:
    public class Screen extends JLabel {
            @SuppressWarnings("static-access")
            protected void paintComponent(Graphics g) {
                super.paintComponent(g);
                addRect(g);
            }
            public void addRect(Graphics g) {
                g.drawRect(50, 50, 50, 50);
            }
 

Servo Herko

Aktives Mitglied
o_O ich meine das ja nicht so, ich meine z.b. auf Knopfdruck ein Rectangle zu erstellen, so wie jetzt würde es ja keinen Sinn ergeben... Also das die Methode von ausserhalb aufgerufen wird und dann etwas drawed!
 

NobbyProg

Mitglied
Ich würde eine List mit Rectangles im screen anlegen. In der draw zeichnest du einfach alle rectangles in der list, in der add fügst du ein rectagle der list hinzu. Bei einem Knopfdruck musst du also erst die addRect methode aufrufen und danach screen.repaint(). Kann grad leider keinen Code posten, wenn du es allein nicht schaffst, sag nochmal bescheid!
 

Listener

Mitglied
wenn du eine Methode schreibst z.B.

Java:
public void rechteck(){

Graphics g = new Graphics();

g.drawRect(50,50,50,50);
//oder
Rectangle rechteck = new Rectangle(50,50,50,50);
g.fill(rechteck);

}

dann kannst du es auch im Prinzip in einer Methode ausser paint zeichnen lassen.
Musst dann nur Graphics() als Objekt erzeugen. Aber der Effekt bleibt der selbe.

Hoffe das war die Antwort auf deine Frage :)
 

MrClave

Bekanntes Mitglied
wenn du eine Methode schreibst z.B.

Java:
public void rechteck(){

Graphics g = new Graphics();

g.drawRect(50,50,50,50);
//oder
Rectangle rechteck = new Rectangle(50,50,50,50);
g.fill(rechteck);

}

dann kannst du es auch im Prinzip in einer Methode ausser paint zeichnen lassen.
Musst dann nur Graphics() als Objekt erzeugen. Aber der Effekt bleibt der selbe.

Hoffe das war die Antwort auf deine Frage :)

Viel Spaß beim erzeugen eines Graphics Objektes.

Mal im Ernst. Niemand erzeugt sich per Hand ein Graphics Objekt.
Man frägt immer schön höflich beim BS an, ob man einen Stift bekommt.

Butterbemme und NobbyProg haben's schon richtig beantwortet, und wie NobbyProg schon schrieb, hält man das ganze schön in einer Datenstruktur fest.
 
Zuletzt bearbeitet:

Listener

Mitglied
Klar. Hast recht. Ich musste das für mein Projekt so machen um die Methode mit einem Ereignis erst aufzurufen und ein Rechteck auf dem Panel zu malen.
Ich hab nur ein teil ganzes als Bsp Vorgelegt, damit bekannt ist das es auch ohne paint geht. Wollte das ganze jetzt nicht programmieren die Grundlagen das das im BS angemeldet usw sollten jedem bekannt sein :)

Hab da was in der Frage missverstanden schätze ich :)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Rectangles Java Basics - Anfänger-Themen 4
S Rectangles wiederhohlen! Java Basics - Anfänger-Themen 3
S Map mit Rectangles... Java Basics - Anfänger-Themen 4
J Jtable Eingabe nach Klick ausserhalb der Tabelle übernehmen Java Basics - Anfänger-Themen 6
J Array ausserhalb der Methode initialisieren Java Basics - Anfänger-Themen 4
F Erste Schritte (Gelöst) Anfängerfrage Arraylist ausserhalb der Main Methode Java Basics - Anfänger-Themen 2
P Wie Java-Plugin in Browser installieren OHNE volles Java ausserhalb? *.jnlp not startable Java Basics - Anfänger-Themen 1
C Regex zum matchen ausserhalb von Tags Java Basics - Anfänger-Themen 3
0 KeyListener ausserhalb der Applikation Java Basics - Anfänger-Themen 5
E Integer ausserhalb des Zahlenbereiches Java Basics - Anfänger-Themen 2
0 Mouse nicht ausserhalb der Applikation zulassen Java Basics - Anfänger-Themen 20
L aus package auf klasse Ausserhalb des package zugreifen, wie? Java Basics - Anfänger-Themen 8
T Variablen und Konstante ausserhalb des Programmcodes Java Basics - Anfänger-Themen 2
S Listener von ausserhalb aufrufen Java Basics - Anfänger-Themen 2
J arraylist ausserhalb der main Methode zugänglich machen (Elemente adden und updaten) Java Basics - Anfänger-Themen 4
H auf variablen ausserhalb der ausgeführten klasse zugreifen Java Basics - Anfänger-Themen 3
S Konfigurationsfile ausserhalb *.jar Java Basics - Anfänger-Themen 7
M Properties ausserhalb von jar files Java Basics - Anfänger-Themen 3
B Variable ausserhalb der If Anweisung Java Basics - Anfänger-Themen 8
G Zeichnen ausserhalb der paint Methode Java Basics - Anfänger-Themen 4
C Probleme mit paintComponent Java Basics - Anfänger-Themen 13
F Java GUI-PaintComponent funktioniert nicht Java Basics - Anfänger-Themen 1
H Programmaufbau in Ordnung? Problem mit paintComponent() Java Basics - Anfänger-Themen 10
I Methoden public void paintComponent (Graphics g) Java Basics - Anfänger-Themen 4
M Problem mit paintComponent Java Basics - Anfänger-Themen 6
M PaintComponent Java Basics - Anfänger-Themen 9
J Wer oder was ruft die "paintComponent()" Methode auf? Java Basics - Anfänger-Themen 19
K paintComponent Java Basics - Anfänger-Themen 23
K paintComponent Java Basics - Anfänger-Themen 9
G paintComponent wird nicht ausgeführt Java Basics - Anfänger-Themen 4
kulturfenster paintComponent wird nicht aufgerufen Java Basics - Anfänger-Themen 16
kulturfenster Frage bez paintComponent Java Basics - Anfänger-Themen 5
kulturfenster super.paintComponent(g); Java Basics - Anfänger-Themen 3
G fehler bei paintComponent Java Basics - Anfänger-Themen 6
kulturfenster paintComponent und Timer Java Basics - Anfänger-Themen 2
W Weitere Parameter in die paintComponent()-Methode übergeben? Java Basics - Anfänger-Themen 7
ElViZ paintComponent in den Vordergrund? Java Basics - Anfänger-Themen 2
F paintComponent mit repaint() aufrufen Java Basics - Anfänger-Themen 27
M paintComponent() in abstrakter und vererbender Klasse Java Basics - Anfänger-Themen 3
G paintComponent(Graphics g) Java Basics - Anfänger-Themen 2
V KSKB zum Verständnis von Graphics und paintComponent Java Basics - Anfänger-Themen 6
G paintComponent neu zeichnen Java Basics - Anfänger-Themen 5
S paintComponent, neue Instanz überschreibt wohl alte Instanz Java Basics - Anfänger-Themen 6
G Exception in PaintComponent Java Basics - Anfänger-Themen 2
U BufferedImage anzeigen, imageIcon oder paintComponent(); Java Basics - Anfänger-Themen 6
G probleme mit paintComponent Java Basics - Anfänger-Themen 14
M Probleme mit JPanel und paintComponent Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben