Portal > Foren > Java > Desktop-Applikationen und Grafik > Komponenten sind nicht am definierten Ort platziert
Antwort
 
Themen-Optionen Thema durchsuchen
Alt 29.10.2004, 14:55 Nach oben    #1
Kloppstock
Gast
 
Beiträge: n/a
Standard Komponenten sind nicht am definierten Ort platziert

Hallo,

ich möchte eine graphische Oberfläche mit AWT/Swing erstellen, in der beispielsweise Panels, Labels, Textfelder ... vorkommen.

Beim Einfügen der Komponenten in die ContentPane entsteht folgender kurioser Effekt:

--> Immer die im Quellcode zuletzt eingefügte Komponente erstreckt sich über die gesammte ContentPane, obwohl die Koordinaten der Komponente mittels der Methode "setBounds()" anders definiert wurden.



Wo liegt mein Denkfehler, was hab ich vergessen?

Bin für schnelle Hilfe sehr dankbar ... Kloppstock

Screenshot
Beispielquelltext:

import java.awt.*;
import javax.swing.*;

public class test extends JFrame{

Label istOk1;
Label istOk2;
Label gehtNicht;

public test(){
//Label1 --> wird korrekt dargestellt
istOk1 = new Label("Irgendein beliebiger Text.");
istOk1.setBounds(20,20,250,40);
getContentPane().add(istOk1);

//Label2 --> wird korrekt dargestellt
istOk2 = new Label("Irgendein zweiter beliebiger Text.");
istOk2.setBounds(20,50,250,40);
getContentPane().add(istOk2);

//!! Label3 --> nicht an der definierten Position !!
gehtNicht = new Label("letzte fehlerhafte Komponente");
gehtNicht.setBounds(20,80,250,40);
getContentPane().add(gehtNicht);

this.setBounds(0,0,300,200);
this.setResizable(true);
this.setVisible(true);
}

public static void main(String[] args) {
new test();
}
}
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.10.2004, 15:54 Nach oben    #2
Kloppstock
Gast
 
Beiträge: n/a
Standard Habs

Jetzt hab ich selbst herausgefunden --> getContentPane().setLayout(null); hat gefehlt .

Trotzdem DANKE
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.10.2004, 17:00 Nach oben    #3
Projektleiter
 
Registriert seit: 30.11.2005
Ort: Bottrop
Beiträge: 1.133
Standard

Ein Wort der Warnung: Das "Null-Layout" ist absolut gefährlich. Es reagiert nicht auf eine Größenveränderung des Fensters oder der sich darin befindenen Komponenten. Besonders gefährlich wird es, wenn dein Programm internationalisiert ist, da die Übersetzungen unter Umständen andere Größen haben könnten.

Sollte kein passender Layout-Manager für dein Problem im Paket seien: http://www.jgoodies.com - dort gibt es das ausgesprochen flexible FormLayout.
pago ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 29.10.2004, 23:32 Nach oben    #4
Kloppstock
Gast
 
Beiträge: n/a
Standard

Dem Quelltext werde ich sowieso die Methode setResizeable(false); hinzufügen.
Troztdem vielen Dank für den Hinweis, beim nächsten Mal werde ich Ihn sicherlich befolgen

Gruß Olli
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.10.2004, 11:40 Nach oben    #5
Tramp
Gast
 
Beiträge: n/a
Standard

Das wird nicht reichen.
Wenn du Dein Programm internationalisierst und zum Bleistift die Länge der jLables nicht reicht, siehts nicht mehr hübsch aus.

Ich habe selber das Problem gehabt.

Nur so als Tipp.
 
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Alt 31.10.2004, 12:17 Nach oben    #6
Erfahrener Benutzer
 
Benutzerbild von peschmae
 
Registriert seit: 29.05.2004
Beiträge: 228
Standard

Kann eventuell auch schon reichen das Theme zu ändern oder die Sache auf einem anderen PC mit anderer Schriftgrösse zu betreiben.

MfG Peschmä
__________________
Amazon.de | The Java Trap | Freie Software | Freie Software vs. Open Source | GNU Classpath | GCJ | SableVM
"We should forget about small efficiencies, say about 97% of the time: Premature optimization is the root of all evil." - Donald Knuth
peschmae ist offline  
Diesen Beitrag zu to del.icio.us hinzufügen!Diesen Beitrag zu Technorati hinzufügen!Diesen Beitrag zu Mister Wong hinzufügen!
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
PingBacks sind an
RefBacks sind aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Komponenten in Komponenten Robinson Desktop-Applikationen und Grafik 1 17.11.2005 16:52


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:21 Uhr.


Powered by vBulletin® Version 3.7.4 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0

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 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45