fontys-tipc Geschrieben 29. August 2008 Geschrieben 29. August 2008 Hey Leuts, ich versuche gerade meinem JFrame eine Gui yu verpassen...genauer moechte ich 3 labels an die raender setzen um den Frame zu umrahmen...ich habe das gleiche schon einmal bei einem normalen fenster gemacht,...beim JFrame klappts allerdings nicht...hier mein Quellcode: import java.awt.BorderLayout; import java.awt.Color; import javax.swing.*; public class PopUp extends JFrame { JFrame frame; private JTextField filterApplication, filterUsername; private JButton searchButton; private JLabel southLabel, eastLabel, westLabel; PopUp() { frame = new JFrame("PopUp zum hinzufuegen eines Passwort/Application Paars"); frame.setSize(500, 300); frame.setLocation(130, 75); frame.setVisible(true); //Panel erstellen JPanel topPanel = new JPanel(); JPanel downPanel = new JPanel(); JPanel eastPanel = new JPanel(); JPanel westPanel = new JPanel(); topPanel.setBackground(Color.lightGray); downPanel.setBackground(Color.lightGray); eastPanel.setBackground(Color.lightGray); westPanel.setBackground(Color.lightGray); filterApplication = new JTextField(20); filterApplication.setText("Benutzeroberfläche"); filterUsername = new JTextField(20); filterUsername.setText("Benutzernamen"); searchButton = new JButton("Suchen"); southLabel = new JLabel("© by Nico Buschkamp"); eastLabel = new JLabel(""); westLabel = new JLabel(""); topPanel.add(filterApplication); topPanel.add(filterUsername); topPanel.add(searchButton); downPanel.add(southLabel); eastPanel.add(eastLabel); westPanel.add(westLabel); this.getContentPane().add(topPanel, BorderLayout.NORTH); this.getContentPane().add(downPanel, BorderLayout.SOUTH); this.getContentPane().add(eastPanel, BorderLayout.EAST); this.getContentPane().add(westPanel, BorderLayout.WEST); } public static void main(String[] args) { PopUp popUp = new PopUp(); } } habe ich etwas uebersehen? danke schon einmal im vorraus gruss fontys-tipc Zitieren
perdian Geschrieben 29. August 2008 Geschrieben 29. August 2008 beim JFrame klappts allerdings nicht...Wie äussert sich denn dieses "klappt nicht"? Wird überhaupt etwas angezeigt? Wenn ja: Was? Spontan würde mir bei dem Quellcode einfallen: Der Aufruf von JFrame#setLayout(new BorderLayout()); fehltWieso erweiterst du JFrame und hast zusätzlich noch ein JFrame als Property? Das sieht schon seltsam aus. Zitieren
fontys-tipc Geschrieben 29. August 2008 Autor Geschrieben 29. August 2008 es erscheint lediglich das schlichte fenster...keine labels nix Zitieren
perdian Geschrieben 29. August 2008 Geschrieben 29. August 2008 es erscheint lediglich das schlichte fenster...keine labels nix Hast du das hier probiert: Der Aufruf von JFrame#setLayout(new BorderLayout()); fehlt Wenn nein: Warum nicht? Hast du schonmal ein Swing-Tutorial gelesen? Wenn nein: machen! Zitieren
loonytune Geschrieben 31. August 2008 Geschrieben 31. August 2008 es erscheint nichts weil du erzeugt ganz brav ein frame. aber einfügen tust du die labels dann in "this". das is ja ein anderes frame. wie mein kollege schon bemerkt hat ist es sehr komisch das du 2 frames hast. und hier ist es dein fehler!! Zitieren
fontys-tipc Geschrieben 31. August 2008 Autor Geschrieben 31. August 2008 ah alles klar,...hab den fehler mit den frames behoben und das layout auch auf borderlayout gesetzt...nun klappts...dangööö Zitieren
speedi Geschrieben 1. September 2008 Geschrieben 1. September 2008 Entwerder machst du das JFrame über "extends JFrame" dann ist deine tgesamte klasse ein JFrame mit allen Methoden von JFrame und so. Oder legst du dir ein eigenes JFrame als Objekt innerhalb der Klasse an. Du hast hier die beiden möglichkeiten netterweise vermischt. Lösch mal das extends JFrame aus deinen Code raus und mach anstatt "this.getContentPane().add" einfach frame.getContentPane.add(). Zitieren
fontys-tipc Geschrieben 1. September 2008 Autor Geschrieben 1. September 2008 ah alles klar,...hab den fehler mit den frames behoben und das layout auch auf borderlayout gesetzt...nun klappts...dangööö genau das habe ich gemacht trotzdem danke Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.