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.

JScrollPane - Anzeigen wenn Frame verkleinert wird

Empfohlene Antworten

Veröffentlicht

Hey Leute,

ich werkel seit gestern an meinem Problem rum. Ich will einfach nur eine ScrollBar sehen, wenn ich das Frame verkleinere... ich bekomme das einfach nicht hin. Hab schon mit

scrollPane.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_AS_NEEDED);
gearbeitet, aber der versteht nicht, wann ich die sehen will. hier mein bisheriger code..
import java.awt.BorderLayout;

import java.awt.EventQueue;


import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.UIManager;

import javax.swing.border.EmptyBorder;

import javax.swing.JScrollPane;

import javax.swing.JScrollBar;

import javax.swing.JCheckBox;

import javax.swing.ScrollPaneConstants;

import javax.swing.JTextPane;

import java.awt.GridLayout;

import java.awt.GridBagLayout;

import java.awt.GridBagConstraints;

import javax.swing.JButton;



public class FrmOrderDetail extends JFrame {


	private JPanel contentPane;


	/**

	 * Launch the application.

	 */

	public static void main(String[] args) {

		EventQueue.invokeLater(new Runnable() {

			public void run() {

				try {

					FrmOrderDetail frame = new FrmOrderDetail();

					frame.setVisible(true);

				} catch (Exception e) {

					e.printStackTrace();

				}

			}

		});

	}


	/**

	 * Create the frame.

	 */

	public FrmOrderDetail() {


		// Look And Feel

		try {

			UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());

		} catch (Exception e) {

		}


		// placements

		setVisible(true);

		setDefaultCloseOperation(DISPOSE_ON_CLOSE);


		setBounds(100, 100, 1772, 1010);

		contentPane = new JPanel();

		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));

		setContentPane(contentPane);

		contentPane.setLayout(new BorderLayout(0, 0));


		//hier JScrollPane hinzufügen, aber wie?



	}

}
Folgendes hab ich versucht:
	JScrollPane scrollPane = new JScrollPane();

		scrollPane.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);

		scrollPane.setHorizontalScrollBarPolicy(ScrollPaneConstants.HORIZONTAL_SCROLLBAR_ALWAYS);

		contentPane.add(scrollPane);

Jetzt ist es aber so, dass das JScrollPane seine größe mit verändert, ich aber trotzdem keine Balken sehe. Ich hab wirklich alles versucht und komme nicht mehr weiter.

Hoffentlich kann mir jemand helfen.

Grüße, Katja.

Du rufst den Konstruktor von JScrollPane ohne Parameter auf, deshalb erhältst du ein leeres JScrollPane. Und du fügst dein JScrollPane deinem JPanel hinzu – richtig wäre, das JPanel ins JScrollPane zu packen.

Ein JScrollPane erstellt eine scrollbare Ansicht einer GUI-Komponente. Diese Komponente, z. B. dein JPanel, kannst du dem Konstruktor von JScrollPane als Parameter übergeben. Anschließend packst du das so erzeugte JScrollPane in einen Container wie z. B. ein JFrame. Beispiel:

JScrollPane scrollPane = new JScrollPane([COLOR="#0000CD"]panel[/COLOR]);

frame.getContentPane().add(scrollPane, BorderLayout.CENTER);

Das panel heißt in deinem Code contentPane, was, wenn du es richtig machst, eine irreführende Bezeichnung ist. :)

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.