Keine zwei Objekte im Fenster möglich? Was läuft falsch?

Status
Nicht offen für weitere Antworten.

iflash

Mitglied
Hallo Gemeinde,


vielleicht weiß jemand Rat:

Ich versuche, in ein mit JFrame angelegtes Fenster Objekte anzeigen zu lassen, die in folgender Routine angelegt werden (verkürzte Darstellung):

Code:
public class Page extends JPanel {

	@Override
	protected void paintComponent ( Graphics g ){

		super.paintComponent( g );
		Graphics2D g2 = (Graphics2D) g;
		g2.setColor ( Color.WHITE );
		g2.fillRect ( posX, posY, 50,70 );
	
	}
}
in main() werden die über "new Page ()" angelegten Objekte in ein Fenster geaddet:
Code:
...

	JFrame mainWindow = new JFrame ( );
	mainWindow.setDefaultCloseOperation ( JFrame.EXIT_ON_CLOSE );	mainWindow.setSize( 300,300 );

	mainWindow.add( pages[1] );
	mainWindow.add( pages[2] );

       ...

	mainWindow.add( pages[xyz] );


	mainWindow.setVisible( true );
das Array pages ist dabei ein Array von Instanzen des Typs Page (siehe oben).

Jetzt meine Fragen:

1. Wenn ich keinen LayoutManager setze, dann kann ich die Koordinaten des Rechtecks ändern wie ich will, ich er setzt es immer links oben in das Fenster. Merkwürdigerweise landet ein zweites Rechteck mit denselben Koordinaten (zum Beispiel 100,100) tatsächlich dort. Aber jedes weitere wird nicht gezeigt. Was mache ich falsch?

2. Setze ich den FlowLayout-manager, dann ist jedes meiner Rechtecke nur ungefähr 10 x 10 Pixel groß, egal wie groß ich das Rechteck zeichne, angezeigt werden jedoch alle (immerhin). Was mache ich falsch?

3. Setze ich den Grid-Manager, wird alles korrekt angezeigt, doch den kann ich leider nicht brauchen ...

Oder anders gefragt: Wenn ich in ein Fenster Objekte zeichnen will, die der Anwender später verschieben können soll, welche Methode ist die Richtig?


Wer weiß Rat?

Lieben Gruß

iFlash
 

Wildcard

Top Contributor
Zuerst mal musst du unterscheiden:
1. Fall kein Layout
du setzt Größen und Positionen absolut mit
setSize, setLocation, setBounds

2. Fall GridLayout
deine Vorgaben werden ignoriert

3. Fall ein anderes Layout
Du kannst nur hints mit setPreferredSize setzen, die Position bestimmt der LayoutManger, je nach Art des Managers kannst du weitere hints in Form von Constraints setzen.

Wenn der Benutzer die Position verändern können soll ist NullLayout die richtige Wahl.
 

iflash

Mitglied
Hallo Wildcard,

danke für deine schnelle Antwort. Funktioniert irgendwie noch nicht ganz. Mit ...
Code:
		pages[0].setBounds( 0,0, 50,70 );
//		pages[1].setBounds( 60,0, 50,70 );
		pages[2].setBounds( 120,0, 50,70 );
		pages[3].setBounds( 180,0, 50,70 );
		pages[4].setBounds( 240,0, 50,70 );

		mainWindow.add( pages[0] );
//		mainWindow.add( pages[1] );
		mainWindow.add( pages[2] );
		mainWindow.add( pages[3] );
		mainWindow.add( pages[4] );

Erhalte ich nur DREI Kästchen. Das letzte (240,0,50,70) fehlt. Es sieht wirklich so aus, als ob er immer das letzte Objekt einfach "vergisst" ... Hast du eine Idee, woran das liegen kann?

Danke,


iFlash
 

iflash

Mitglied
Wildcard hat gesagt.:
hmm, stimmt denn die Anordnung der anderen 3?


Es sieht wohl so aus: Das erste Objekt wird IMMER auf 0,0 gesetzt, egal, welche Koordinaten angegeben wurden. Alle weiteren Objekte rutschen dann nach, soll heißen: Wenn das erste Objekt bei 60,0 hätte plaziert werden sollen, fällt das zweite dort hin ...

iFlash


*EDIT* Habe die zu zeichnenden Rechtecke numeriert: Es ist so: Das *letzte* Element wird bei 0,0 gezeichnet, alle anderen landen am richtigen Platz. Wenn natürlich nur ein Objekt geaddet wird, wird dies falsch gezeichnet.

Ist das jetzt ein Fehler in Java oder bei mir? Hilllffeeeeee!

iFlash
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
krgewb Keine richtige Doku Java Basics - Anfänger-Themen 5
N Interpreter-Fehler Compiler zeigt keine Fehler an, aber das Programm läuft nicht (BlueJ) Java Basics - Anfänger-Themen 2
G Endlosschleife keine Rückgabe Java Basics - Anfänger-Themen 36
Nooobi Regex und .matches() geben keine Ausnahme Java Basics - Anfänger-Themen 10
berserkerdq2 Warum ist das keine Referenzkopie mehr? Java Basics - Anfänger-Themen 26
O Java 17 keine Pflicht um Exceptiones zu behandeln? Java Basics - Anfänger-Themen 2
nbergmann Installation unter jdk.java.net: Keine ZIP-Datei zum entpacken Java Basics - Anfänger-Themen 2
M Eclipse kennt keine String Klasse mehr Java Basics - Anfänger-Themen 1
K Erste Schritte "Taschenrechner" zeigt keine Komma Zahlen an. Java Basics - Anfänger-Themen 8
M Keine Ausführung von System.out.println() Java Basics - Anfänger-Themen 3
H Warum kann man keine Parameter in die main-Methode packen? Java Basics - Anfänger-Themen 4
B Nach eingefügtem Code erkennt Compiler keine Instanzvar und meldet SyntaxError Java Basics - Anfänger-Themen 2
A keine Ergebnisse - String nummer in array nummer converting Java Basics - Anfänger-Themen 1
JavaClap "Bruchrechner" liefert Fehler/keine Ausgabe bei Addition und Subtraktion Java Basics - Anfänger-Themen 0
M Regex nur Zahlen und Punkt zulassen, Keine Eingabe(Leeres TextFeld) nicht zulassen Java Basics - Anfänger-Themen 6
B Ich kann keine Hühner töten Java Basics - Anfänger-Themen 49
C Ganzzahlige Werte in Boolean ausgeben und überprüfen ob Primzahl oder nicht, wenn es keine Primzahl ist soll es die Primfaktorzerlegung ausgeben Java Basics - Anfänger-Themen 4
I Regex findet keine Treffer Java Basics - Anfänger-Themen 4
B Keine Ausgabe .. Woran liegt das? Ich komme nicht weiter Java Basics - Anfänger-Themen 14
T Bei mir wird keine javac angezeigt sondern nur javacpl Java Basics - Anfänger-Themen 2
R Keine Verbindung mit MariaDB Java Basics - Anfänger-Themen 18
O Input/Output newbile und keine Ahnung! Java Basics - Anfänger-Themen 16
S Kann keine Bilder laden? Java Basics - Anfänger-Themen 9
C Problem: PC ohne Internet und keine Möglichkeit Programme zu laden Java Basics - Anfänger-Themen 5
Bun17 Keine Ausgabe in der Konsole Java Basics - Anfänger-Themen 2
R Keine Verbindung zu MySql über Netbeans Java Basics - Anfänger-Themen 15
D jsoup.select findet keine elemente Java Basics - Anfänger-Themen 2
U Null Exception aber keine Ahnung warum Java Basics - Anfänger-Themen 5
W Was bedeutet im Struktogramm „zufall“ aufrufen (keine Parameterübergabe)? Java Basics - Anfänger-Themen 8
T Keine Ahnung vom Programieren Java Basics - Anfänger-Themen 28
A SelectionSort bringt keine konstanten Ergebnisse Java Basics - Anfänger-Themen 4
J RPN Taschenrechner - keine Lösung!! Java Basics - Anfänger-Themen 84
I equals (Override) mit eigener Exception (keine Runtime-Exception) Java Basics - Anfänger-Themen 9
C Keine javac.exe in bin-Datei Java Basics - Anfänger-Themen 3
A Vollkommene Zahlen: Findet keine Einzige Java Basics - Anfänger-Themen 9
J Input/Output javac HelloWorld.java - Keine Textausgabe in der Konsole Java Basics - Anfänger-Themen 4
H JDK installieren keine Installationsroutine bei Javainstallation sichtbar Java Basics - Anfänger-Themen 4
H Buttons zeigen keine Reaktion Java Basics - Anfänger-Themen 6
I Programm von mir - keine Ahnung mehr ob richtig falsch:-( Java Basics - Anfänger-Themen 6
D Datentypen Datentyperstellung | Kompiler sagt Syntax Error doch ich find keine Lösung Java Basics - Anfänger-Themen 2
snipesss IDE zeigt keine Fehler an, Programm wird jedoch nicht ausgeführt. Java Basics - Anfänger-Themen 18
Khorgoroth Erste Schritte Keine Ausgabe Java Basics - Anfänger-Themen 2
P Listen sortieren mit Binärbaum gibt keine Ausgabe ab 10000 Integern Java Basics - Anfänger-Themen 14
Z AWT package -> keine Konsole? Java Basics - Anfänger-Themen 2
Henri keine Ausgabe Java Basics - Anfänger-Themen 5
J TableView zeigt keine Daten an Java Basics - Anfänger-Themen 14
C Java stellt unter Windows keine Umlaute dar Java Basics - Anfänger-Themen 9
A Keine Konsolenausgabe Java Basics - Anfänger-Themen 5
D Methoden Filewriter macht keine Zeilenumbrüche Java Basics - Anfänger-Themen 3
D Compiler-Fehler NullPointerExeption aber Ecplise zeigt keine Fehler an?! Java Basics - Anfänger-Themen 8
D addActionListener zeigt keine Wirkung Java Basics - Anfänger-Themen 8
S Warum erlaubt ein while-Loop keine Variablen-Declaration wie der for-Loop..? Java Basics - Anfänger-Themen 6
M Lottozahlen 6 aus 49 keine doppelten Java Basics - Anfänger-Themen 5
D Keine Ausgabe in meinem Helden Programm Java Basics - Anfänger-Themen 2
M Keine Ausgabe Java Basics - Anfänger-Themen 4
C PrintWriter schreibt keine in Strings enthaltenen Zeilenumbrüche Java Basics - Anfänger-Themen 9
D Keine Funktion bei "else" Java Basics - Anfänger-Themen 5
J Rückgabe als Wert, keine Referenz Java Basics - Anfänger-Themen 3
K Keine doppelten Zufallszahlen im Array Java Basics - Anfänger-Themen 17
X Einfach verkettete Liste, keine Fehlermeldung Programm friert ein Java Basics - Anfänger-Themen 4
1 Mini Programm, keine Eingabe möglich.. Java Basics - Anfänger-Themen 6
P Wiedereinstieg und kann keine Dateien mehr öffnen... Java Basics - Anfänger-Themen 13
R Keine doppelten Zufallszahlen Java Basics - Anfänger-Themen 2
T Buffererwriter keine Exception obwohl Client weg Java Basics - Anfänger-Themen 2
D Java Eclipse hat scheinbar keine library Java Basics - Anfänger-Themen 2
M Keine Datenbank verbindung Java Basics - Anfänger-Themen 14
E Keine Ausgabe der Konsole Java Basics - Anfänger-Themen 4
Pentalon Eclipse JUNO keine Vorschläge von Methoden bzw. Interfaces der eigenen Klassen Java Basics - Anfänger-Themen 5
tuttle64 Keine Umlaute im Dos Fenster Java Basics - Anfänger-Themen 12
D Erstellte Jar datei zeigt keine Bilder an Java Basics - Anfänger-Themen 5
L Klassen Ich kann keine .jar Dateien mehr öffnen Java Basics - Anfänger-Themen 4
J Haben Chars wirklich keine KeyCodes? Java Basics - Anfänger-Themen 12
L Applet : keine Recht für Zugriff auf Clipboard (trotz Zertifikat) Java Basics - Anfänger-Themen 4
A contains bzw. indexOf liefert keine Treffer? Java Basics - Anfänger-Themen 3
M Java Webstart keine Zugriffe Java Basics - Anfänger-Themen 7
W Eclipse erstellt keine Klassen Java Basics - Anfänger-Themen 6
B Aus einem Eclipse Projekt eine .jar - keine Bilder drin Java Basics - Anfänger-Themen 7
K org.h2.jdbc.JdbcSQLException: Keine Daten verfügbar Java Basics - Anfänger-Themen 9
J Mehrere Zufallszahlen erzeugen, aber keine darf doppelt erzeugt werden - Wie? Java Basics - Anfänger-Themen 5
E String soll mit Großbuchstaben anfangen und keine Sonderzeichen enthalten Java Basics - Anfänger-Themen 4
P Zugriff auf Attribute einer Klasse, zu der keine Verbindung besteht Java Basics - Anfänger-Themen 11
J InputStreamReader + BufferedReader - keine Eingabemöglichkeit Java Basics - Anfänger-Themen 10
T JTable keine spaltenbeschriftung Java Basics - Anfänger-Themen 2
G Input/Output FilenameFilter aber bitte keine Unterordner Java Basics - Anfänger-Themen 5
M nach jar export keine db abfrage möglich Java Basics - Anfänger-Themen 2
G JDK installieren keine eclipse.exe gefunden Java Basics - Anfänger-Themen 16
S Erste Schritte Wo steht eigentlich das ein jar keine andere jars enthalten darf? Java Basics - Anfänger-Themen 19
O Erste Schritte Klassenname zurückgeben, keine instanz Java Basics - Anfänger-Themen 23
K keine Reaktion im TableModel nach ändern der liste? Java Basics - Anfänger-Themen 2
T keine buchstaben!nur zahlen eingabe möglich Java Basics - Anfänger-Themen 48
M keine geschwungenen Klammern Java Basics - Anfänger-Themen 9
E Input/Output Socket bekommt keine Verbindung bei funktionierendem Fremdziel Java Basics - Anfänger-Themen 2
V JavaApplet versendet keine mail Java Basics - Anfänger-Themen 8
B Interface Nach "package"-Nennung keine Toolbar-Icons mehr Java Basics - Anfänger-Themen 5
B Geerbte Instanz kann keine void Methode ausführen?! Java Basics - Anfänger-Themen 15
S Java Web Start lädt keine Bilder Java Basics - Anfänger-Themen 2
P Keine Rechenoperationen bei Doublewert? Java Basics - Anfänger-Themen 4
B Variablen keine Arrayübergabe für getter im Interface Java Basics - Anfänger-Themen 8
I Habe keine Idee was ich als Anfänger programmieren kann. Java Basics - Anfänger-Themen 4
R Kalender speichert keine Zeit Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben