# JFRAME Klasse und Paint Klasse zusammenbringen



## webix (25. November 2005)

Guten Tag,

wie kann man folgendes "Problem" lösen?

Man hat zwei Klassen, in einer werden die Fensteroptionen festgelegt (GUI) und in einer zweiten Klasse wird die paint(Graphics g) Methode aufgerufen um z.B. einen Text im Frame der ersten Klasse zu platzieren. Wie kann ich jetzt den Text im Frame der ersten Klasse sichtbar machen?


----------



## Snape (25. November 2005)

Merk Dir die Strings, die Du in der paint() anzeigst, leg entsprechende getter-Methoden dafür an und referenziere in der Frame-Klasse die Klasse, in der die paint() steckt.


----------



## Tsa (25. November 2005)

Hey,
Das intressiert mich jetzt aber auch  
Kannst du mal ein Beispiel bringen? Weiß nicht was du mit "getter-Methoden" meinst.

mfg,
Tsa


----------



## MasterHimself (25. November 2005)

Ne getter Methode ist einfach ne Methode die ein Feld aus einem Objekt zurückgibt, Beispiel dafür ist
die getContentPane(). Das Gegenteil davon sind setter Methode, die den Wert eines Feldes eines Objektes ändern, beispielsweise setValue().

Grüße Master


----------



## Tsa (26. November 2005)

Hey,
schonmal vielen Dank, aber was bringt mir das nun bei diesem Problem? :| Kann mir wer vielleicht genau dazu den Code geben wenn das nich zuviel Arbeit ist?  
mfg,
Tsa


----------



## elmato (26. November 2005)

Ich weiss nicht genau ob das gemeint ist, aber aber wenigstens seht ihr dann mal was Getter/Setter sind 

```
import java.awt.Graphics;

import javax.swing.JFrame;
import javax.swing.JPanel;

public class d extends JFrame{
	
	 b b = null;
	 public d(){
		 setSize(800,600);
		 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		 
		b = new b();
		b.setText("hallo");
		getContentPane().add(b);
		setVisible(true);
	 }
	
	public static void main(String[] args) {
		new d();
		
	}
	class b extends JPanel{

		private String text = null;
		
		public void paint(Graphics g){
			g.drawString(text, 50, 50);
		}
		public String getText(){
			return text;
		}
		public void setText(String aText){
			text = aText; 
		}
		
	}
	
}
```
Dies ist jetzt natürlich nur "Spaghetti-Code"...
mfg elmato


----------

