Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

JFrame eine Gui verpassen

Empfohlene Antworten

Veröffentlicht

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

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()); fehlt
  • Wieso erweiterst du JFrame und hast zusätzlich noch ein JFrame als Property? Das sieht schon seltsam aus.

es erscheint lediglich das schlichte fenster...keine labels nix :(

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!

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!!

ah alles klar,...hab den fehler mit den frames behoben und das layout auch auf borderlayout gesetzt...nun klappts...dangööö

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().

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 :D trotzdem danke :P

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.