Aufruf einer Klasse in einem Package

Quax

Mitglied
Ich, ein Java-Neuling, möchte ein Fenster gestalten mit folgenden Code:
Java:
package compmix1;
import java.awt.Component;
import javax.swing.JFrame;
import javax.swing.JPanel;
import compmix2.Visual22;

public class Visual11 extends JFrame
{
//	private JPanel Platte = new JPanel ();

	// Konstruktor
	public Visual11()
	{
		super("Fenster");
		JPanel Platte = new JPanel ();
		Visual22 Anzeige = new Visual22();
		Platte.add(Anzeige);
		setContentPane (Platte);
	}
	public static void main(String[] args) 
	{
		Visual11 thisClass = new Visual11();
		thisClass.setSize(200, 300);
		thisClass.setDefaultCloseOperation(EXIT_ON_CLOSE);
		thisClass.setVisible(true);
	}

}
Darin sollen Texte, Buttons, Eingabefelder und Kontrollkästchen etc. erscheinen. Aus Gründen der Übersicht möchte ich dazu separate Klassen in Packages stellen. Diese Klassen will ich dann aus dem "Main-Code" (siehe oben) aufrufen und wie in diesem Beispiel soll dann der Text angezeigt werden.
Hier die Klasse in einem separaten Package zur Anzeige des Textes:
Java:
package compmix2;
import javax.swing.JFrame;
import javax.swing.JLabel;

public class Visual22 extends JLabel
{
	private JLabel jLabel = new JLabel();
		
	public void setzeText()
	{
		jLabel.setText("Textanzeige");
		jLabel.setSize(30,20);
		jLabel.setVisible(true);
	}
}
Wenn ich jetzt das kleine Programm ausführe wird nur das Fenster mit dem Titel "Fenster" angezeigt, nicht jedoch darin der Text "Textanzeige" aus der Klasse Visual22.
Wie ich aus einigen Beispielen gelernt habe, "pinnt" man wohl diesen JLabel an ein JPanel, hier "Platte" und verbindet dieses JPanel dann mit dem eigentlichen Fenster.

Fragen:
1. Was hab ich falsch gemacht?
2. Wie muss der Code aussehen, dass es funktioniert?
3. Wie muss der Code aussehen, dass ich im Main-Code den Text an die Klasse Visual22 übergeben kann und dieser dann im Fenster angezeigt wird? Denn letztendlich will ich dann nur einen Text vom Main-Code an die z.B. gleiche Textklasse Visual22 übergeben.

Vielen Dank im Voraus
Quax
 

eRaaaa

Top Contributor
1. Was hab ich falsch gemacht?
Du hast ein Label erstellst, es aber nirgends hinzugefügt. Das muss natürlich aufs Panel
2. Wie muss der Code aussehen, dass es funktioniert?

3. Wie muss der Code aussehen, dass ich im Main-Code den Text an die Klasse Visual22 übergeben kann und dieser dann im Fenster angezeigt wird? Denn letztendlich will ich dann nur einen Text vom Main-Code an die z.B. gleiche Textklasse Visual22 übergeben.

Erstmal Grundlagen anlernen/lesen bevor du weiter machst :bae:
Dann das Swing Kapitel lesen (du mischst hier AWT mit Swing usw..) und dann erneut fragen :)
 
S

SlaterB

Gast
um genauer zu werden: Visual22 ist selber ein JLabel und enthält noch ein JLabel, das macht 2 JLabel,
eines bekommt den Text, das andere wird derzeit angezeigt
 

Quax

Mitglied
Den Main-Code hab ich folgendermaßen abgeändert:
Java:
package compmix1;
import javax.swing.JFrame;
import javax.swing.JPanel;
import compmix2.Visual22;

public class Visual11 extends JFrame
{
//	private JPanel Platte = new JPanel ();

	// Konstruktor
	public Visual11()
	{
		super("Fenster");
		JPanel Platte = new JPanel ();
		Visual22 Anzeige = new Visual22();
		Platte.add(Anzeige.jLabel);
		setContentPane (Platte);
	}
	public static void main(String[] args) 
	{
		Visual11 thisClass = new Visual11();
		thisClass.setSize(200, 300);
		thisClass.setDefaultCloseOperation(EXIT_ON_CLOSE);
		thisClass.setVisible(true);
	}
}
Und in der separaten Klasse habe ich nun extends JLabel entfernt und die Kapselung auf public gesetzt. Sie sieht in dem Package nun so aus:
Java:
package compmix2;
import javax.swing.JLabel;

public class Visual22
{
	public JLabel jLabel = new JLabel();
	
	public void setzeText()
	{
		jLabel.setText("Textanzeige");
		jLabel.setSize(30,20);
		jLabel.setVisible(true);
	}
}
Der Compiler zeigt keine Fehler an. Doch weiter wird nur das Fenster "Fenster" angezeigt ohne dem gewünschten Text.
 
Zuletzt bearbeitet:
S

SlaterB

Gast
mein Posting mit den zwei JLabel gesehen?
darüber erstmal sinieren und dann entscheiden welches JLabel es denn sein soll,

> Platte.add(Anzeige.setzteText);
läßt an Kenntnissen und allgemeinen Programmierfähigkeiten arg zweifeln, was hast du dir denn dabei gedacht?
nur sinnvolle Befehle sind auch sinnvoll, man kann nicht nach Beliebigkeit eintippen
jFrame.reagiereSchnell();
 

Quax

Mitglied
Hallo SlaterB,
ja das habe ich gesehen und auch eingearbeitet. Siehe Posting oben. Ja meine Programmierkenntnisse in OOP sind sehr beschränkt darum bin ich auch hier im Anfängerforum.
Nun meine Idee dabei war die Methode "setzeText" in der der Text definiert ist über das Objekt Anzeige, welches ein Objekt der Klasse Visual22 ist, aufzurufen und diese an das JPanel "Platte" zu pinnen. Und das JPanel "Platte" wird dann in dem Fenster angezeigt.
Was ist daran falsch?
Quax
 
S

SlaterB

Gast
> Der Compiler zeigt keine Fehler an. Doch weiter wird nur das Fenster "Fenster" angezeigt ohne dem gewünschten Text.

setzeText() wird nie aufgerufen?

> Nun meine Idee dabei war die Methode "setzeText" in der der Text definiert ist über das Objekt Anzeige, welches ein Objekt der Klasse Visual22 ist, aufzurufen [..] Was ist daran falsch?

eine Methode kann man gerne aufrufen, aber nicht erwarten dass auf magische Weise dann irgendein JLabel irgendwohin wandert,
alles muss seinen strukturierten Lauf nehmen, z.B. könnte setzeText() das JLabel als Rückgabewert liefert, dann ginge in der Richtung schon einiges,
wenn auch eher unschön, setzeText() klingt nicht nach Rückgabe, lieber für sich aufrufen und das JLabel so einfügen, wie du es schon hast
 
D

despikeexd

Gast
du könntest auch die variante mit dem extends JLabel nehmen ...
außerdem fehlt der konstruktor
und mit super() wäre das auch einfacher

wie bereits erwähnt : eigne dir erstmal grundlagen an
das ist ja grauenvoll
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Aufruf von statischen Methoden einer anderen Klasse Java Basics - Anfänger-Themen 15
R Methoden NPE beim Aufruf einer Methode einer anderen Klasse Java Basics - Anfänger-Themen 4
D Aufruf einer Methode einer anderen Klasse Java Basics - Anfänger-Themen 39
S Aufruf Einer Methode aus einer anderen Klasse - Static Fehler Java Basics - Anfänger-Themen 4
T Aufruf einer Methoden aus einer Util-Klasse mit privatem Konstruktor Java Basics - Anfänger-Themen 7
K Methoden aufruf von einer anderen Klasse Java Basics - Anfänger-Themen 7
L Mehrere Objekte einer Klasse aber nur einmal Konstruktor aufruf? Java Basics - Anfänger-Themen 2
G Problemme mit: Aufruf einer Klasse aus einem Frame Java Basics - Anfänger-Themen 5
T Aufruf der Methode einer Oberklasse, wenn sie in der Unterklasse überschrieben ist. Polymorphie. Java Basics - Anfänger-Themen 2
J Aufruf einer Methode über einen String Java Basics - Anfänger-Themen 11
D Aufruf einer statischen Variable Java Basics - Anfänger-Themen 1
V Problem Aufruf einer Methode in einer Methode Java Basics - Anfänger-Themen 1
I Rückgabe und Aufruf einer Methode innerhalb einer anderen Methode Java Basics - Anfänger-Themen 5
H Aufruf einer Instanzmethode funktionert nicht. Java Basics - Anfänger-Themen 6
L Next()-Aufruf zweimal innerhalb einer While-Schleife bei ListIterator Java Basics - Anfänger-Themen 10
L Klassen Aufruf einer ueberschreibbaren Methode im Konstruktor Java Basics - Anfänger-Themen 4
C Exception beim Aufruf einer Methode Java Basics - Anfänger-Themen 2
A Aufruf einer Methode Java Basics - Anfänger-Themen 3
C Aufruf einer Funktion Java Basics - Anfänger-Themen 3
M Frage zum Aufruf eines Applets aus einer HTML - Datei Java Basics - Anfänger-Themen 3
F Variabler Aufruf einer Methode Java Basics - Anfänger-Themen 10
A Aufruf einer externen schon laufenden Anwendung Java Basics - Anfänger-Themen 3
G Rekursiver Aufruf einer JSP über eine JavaScript-Funktion Java Basics - Anfänger-Themen 5
C Deklaration einer Variablen in einem rekursivem Aufruf Java Basics - Anfänger-Themen 5
S Fehlermeldung beim Aufruf einer Methode Java Basics - Anfänger-Themen 3
2 Aufruf einer Methode klappt nicht Java Basics - Anfänger-Themen 3
G Buttonklick -> Aufruf einer Webseite Java Basics - Anfänger-Themen 16
G Aufruf einer .bat-Datei aus Java heraus Java Basics - Anfänger-Themen 6
M Problem beim Aufruf einer Methode: Wo is der Fehler? Java Basics - Anfänger-Themen 12
C Aufruf von Klassen aus einer STATIC Methode mit Parameter Java Basics - Anfänger-Themen 2
D Frage zum Aufruf einer toString-Methode Java Basics - Anfänger-Themen 2
G Aufruf einer Methode Java Basics - Anfänger-Themen 4
B Was mach ich falsch mit dem Aufruf einer Funktion? Java Basics - Anfänger-Themen 12
W Problem mit dem Aufruf einer Methode Java Basics - Anfänger-Themen 2
M Konstruktor-Aufruf im Konstruktor, aber nicht am Anfang? Java Basics - Anfänger-Themen 4
P Array-Objekte-Aufruf Java Basics - Anfänger-Themen 22
Agent4nobody Programmstart durch aufruf des interpreters funktioniert nicht Java Basics - Anfänger-Themen 14
G Main Methode wird beim ersten Aufruf nicht richtig ausgeführt Java Basics - Anfänger-Themen 1
K Erste Schritte Stream-Aufruf vereinfachen Java Basics - Anfänger-Themen 3
sashady ursprüngliche Array-Werte bei erneutem Aufruf? Java Basics - Anfänger-Themen 7
Y Aufruf von Methode nicht möglich. Java Basics - Anfänger-Themen 2
D Aufruf von mehreren Activities bringt die app zum Absturz Java Basics - Anfänger-Themen 5
L Methoden Wie Löse ich ext Methoden Aufruf Fehler? Java Basics - Anfänger-Themen 3
X Methode bei mehrfachen Aufruf kein Effekt Java Basics - Anfänger-Themen 3
H Aufruf von Methoden durch Methoden Java Basics - Anfänger-Themen 3
B EJB und Arquillian - bekomme Nullpointer Exception beim Aufruf der EJB Klasse Java Basics - Anfänger-Themen 40
O Verwirrt beim Java Collection Framework aufruf! Java Basics - Anfänger-Themen 9
T Konsolenscanner startet nicht durch Aufruf von Actionlistener Java Basics - Anfänger-Themen 4
B OOP While Schleife läuft Endlos durch externen aufruf Java Basics - Anfänger-Themen 2
E Vererbung super-Methoden Aufruf Java Basics - Anfänger-Themen 3
D Interface Wieso Aufruf aller Methoden eines Interfaces? Java Basics - Anfänger-Themen 11
A Aufruf von Konstruktor , obwohl 2 Parameter weggelassen werden Java Basics - Anfänger-Themen 7
A Aufruf von Konstruktor , obwohl 2 Parameter weggelassen werden Java Basics - Anfänger-Themen 0
H Rekursiver Aufruf Java Basics - Anfänger-Themen 8
E Daten dem Super Aufruf übergeben Java Basics - Anfänger-Themen 3
D Interface Frame doppelt durch Aufruf der GUI Klasse Java Basics - Anfänger-Themen 1
Henri Aufruf von getX() und getY() aus der Super klasse Objekt() Java Basics - Anfänger-Themen 3
E Aufruf auf Objekt mit übergebenem Wert? Java Basics - Anfänger-Themen 7
T static String Variable wird nur beim ersten aufruf durch eine Funktion geändert. Java Basics - Anfänger-Themen 16
C Erste Schritte Fehler beim *.class Aufruf über cmd.exe Java Basics - Anfänger-Themen 9
M Speichern von Objekten - Verfügbarkeit bei erneutem Aufruf Java Basics - Anfänger-Themen 3
S PHP Aufruf mit mehreren Variablen Java Basics - Anfänger-Themen 2
P Aufruf Methode anderer Klasse Java Basics - Anfänger-Themen 5
J Klassen Reihenfolge beim Aufruf von Klassen Java Basics - Anfänger-Themen 1
O Frage zum Aufruf überladener Methoden Java Basics - Anfänger-Themen 4
G funktions Aufruf aus GUI Java Basics - Anfänger-Themen 9
A Fehlermeldung beim aufruf der main Methode Java Basics - Anfänger-Themen 17
W Zeitversetzter Aufruf der Methoden Java Basics - Anfänger-Themen 6
M Unbekannte Nummer bei Aufruf der toString Methode Java Basics - Anfänger-Themen 3
D Methode mit mehren Rekursiven aufrufen in Methode mit einem Rekursiven Aufruf umwandeln! Java Basics - Anfänger-Themen 1
F signiertes Applet fkt. nicht bei lokalem Aufruf Java Basics - Anfänger-Themen 2
A externer repaint Aufruf Java Basics - Anfänger-Themen 9
A Konstruktor Aufruf Java Basics - Anfänger-Themen 4
Pentalon Ein Aufruf den ich nicht verstehe Java Basics - Anfänger-Themen 11
D dynamischer Aufruf Java Basics - Anfänger-Themen 2
N Aufruf der Methode Java Basics - Anfänger-Themen 16
A Aufruf der paint() Methode Java Basics - Anfänger-Themen 3
K Problem beim Array aufruf Java Basics - Anfänger-Themen 4
P URL für Lokalen Aufruf Java Basics - Anfänger-Themen 5
C OOP Aufruf von Methoden höherer Sichtbarkeit Java Basics - Anfänger-Themen 10
T Client-Fenster bei Aufruf unvollständig Java Basics - Anfänger-Themen 12
S Überladener Konstruktor und aufruf aus eigener Klasse Java Basics - Anfänger-Themen 2
A Aufruf von Konstruktor aus Basisklasse Java Basics - Anfänger-Themen 7
O OOP super aufruf 2 objekte? Java Basics - Anfänger-Themen 3
D Array Methoden Aufruf. Java Basics - Anfänger-Themen 14
M OOP Aufruf vieler Getter Methoden abkürzen? Java Basics - Anfänger-Themen 7
C Aufruf funktioniert nicht Java Basics - Anfänger-Themen 10
G Aufruf externer Funktionen Java Basics - Anfänger-Themen 7
J Aufruf von Funktionen in *.jar mittels Eclipse Java Basics - Anfänger-Themen 4
T Shell Script Aufruf mit Java Java Basics - Anfänger-Themen 7
R Aufruf statische Methode Java Basics - Anfänger-Themen 7
M Aufruf zum Objekt erstellen aus String Java Basics - Anfänger-Themen 5
K OOP Nachteil bei direktem Aufruf von run() auf Thread-Objekten Java Basics - Anfänger-Themen 2
J Aufruf der Methode Java Basics - Anfänger-Themen 6
P OOP Aufruf eines Interfaces Java Basics - Anfänger-Themen 4
E Konstruktor-Aufruf Java Basics - Anfänger-Themen 9
W Multiplikation mit rekursivem Aufruf Java Basics - Anfänger-Themen 17
C exec Aufruf mit Leerzeilen im Pfad Java Basics - Anfänger-Themen 3
L Methoden aufruf Java Basics - Anfänger-Themen 3
M methoden aufruf klappt nicht Java Basics - Anfänger-Themen 6

Ähnliche Java Themen

Neue Themen


Oben