JScrollPane will nicht scrollen

Status
Nicht offen für weitere Antworten.

H2SO3-

Bekanntes Mitglied
Hallo,

habe mir schon ne menge zu JScrollPane durchgelesen und habe auch schon einiges erreicht aber irgendwie haut immer noch nicht alles hin.

Als kleinen Test um es kennenzulernen habe ich mir folgendes ausgedacht.
Icvh erzeuge ein JScrollPane. In dieses packe ich dann ein Pannel, welches ich zum zeichnen meiner eigentlichen dinge benutze wie weitere Panels buttons usw.

Hätte nun gedacht, wenn das Panel was ich in das JScrollPane reinpacke größer als dieses ist, sollte ich scrollen können. Leider klappt dies nicht.
Hier mal etwas beispielcode. Vielleicht kann mir ja mal jemand einen tip geben, wo der denkfehler liegt.

[HIGHLIGHT="Java"]private JScrollPane scrollPane = null;
private JScrollPane getScrollPane() {
if (scrollPane == null) {
scrollPane = new JScrollPane();
scrollPane.setBounds(new Rectangle(30, 19, 150, 130));
scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
scrollPane.setViewportView(panel1);
}
return scrollPane;
}

private JPanel panel1 = null;
private void getPanel1()
{
if(panel1 == null)
{
panel1 = new JPanel();
panel1.setLayout(null);
panel1.setBounds(10, 10, 600, 600);
panel1.setBackground(Color.red);
panel1.add(getPanel2(0));
panel1.add(getPanel2(20));
panel1.add(getPanel2(40));
panel1.add(getPanel2(60));
panel1.add(getPanel2(80));
panel1.add(getPanel2(100));
panel1.add(getPanel2(310));
}
}

private JPanel panel2 = null;
private JPanel getPanel2(int height)
{
panel2 = new JPanel();
panel2.setBounds(10, height, 50, 10);
panel2.setBackground(Color.blue);
return panel2;
}[/HIGHLIGHT]

das erstellen der componenten erfolg in folgender reihenfolge

[HIGHLIGHT="Java"]getPanel1();
jContentPane.add(getScrollPane(), null);[/HIGHLIGHT]

Kann jemand den Fehler erkennen??
 
Zuletzt bearbeitet von einem Moderator:

hdi

Top Contributor
Erstmal ist der Code fürchterlich. getter sollten etwas returnen und nicht void sein,
oder Nebeneffekte hervorrufen.
Member-Variablen stehen für gewöhnlich zusammen am Anfang/Ende einer Klasse,
und nicht mittem im Code.
Das Initialisieren der Komponenten sollte in einem Konstruktor erfolgen.

...abgesehen von diesen Dingen sollte dein Code - wenn er auch unschön ist - funktionieren.

Vllt liegt es am setBounds? Ersetze diese setBounds-Befehle mal durch Aufrufe von

[HIGHLIGHT="Java"]setPreferredSize(Dimension)
[/HIGHLIGHT]

In diesem Zuge darfst du einer Komponente auch nicht das null-Layout geben, wenn
du ihre Grösse per setPreferredSize bestimmtst!
Sollte man eh nie verwenden.
 

H2SO3-

Bekanntes Mitglied
die sachen die du im design angemerkt hast stimmennatürlich. Habe dies jetzt für die bessere darstellung so zuasmmengepackt. Ebenfalls zt.void verwendet, da ich es "nur" mal probieren wollte. Wirklich benutzen tue ich es in einem anderem Frame wo aber halt schon ne menge drinne ist.

super dein tip hat funktioniert, jetzt klappt es so, wie ich es dachte.
Vielen Dank.

Jetzt kann ich den code auch sauber in meinem richtigem frame schreiben *gg*
 

hdi

Top Contributor
Ok aber hab mich vorhin falsch ausgedrückt, nur damit das klar ist:

Wenn du einer Komponente andere Komponenten addest, deren Grösse per
setPreferredSize() angegeben ist, dann darf diese Komponente, auf die du addest,
nicht das null-Layout haben. Sonst werden ihre "Kinder" nicht auf ihre PreferredSize
abgefragt.

...die einzelnen Komponenten selber können, sofern möglich, auch das null-Layout
haben, sofern sie selber nix in sich adden.

Aber nochmal: null-Layout = Bull...
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Scrollbares Fenster (JScrollPane) mit JPanel scrollt nicht Java Basics - Anfänger-Themen 3
L JScrollPane wird nicht angezeigt Java Basics - Anfänger-Themen 10
M JScrollPane scrollt nicht Java Basics - Anfänger-Themen 2
N JList + DefaultListModel + JScrollPane --> ensureIndexIsVisible funktioniert nicht immer Java Basics - Anfänger-Themen 1
A JScrollPane nicht sichtbar Java Basics - Anfänger-Themen 5
S JScrollPane wird nicht angezeigt Java Basics - Anfänger-Themen 6
N jScrollPane wird nicht angezeigt Java Basics - Anfänger-Themen 13
C JScrollPane + JTextArea scrollt nicht Java Basics - Anfänger-Themen 2
T JScrollPane nicht scrollbar (mit KSKB!) Java Basics - Anfänger-Themen 4
T JScrollPane funktioniert nicht Java Basics - Anfänger-Themen 7
S JScrollPane verhält sich nicht so wie gedacht Java Basics - Anfänger-Themen 2
T JScrollPane resized nicht richtig... Java Basics - Anfänger-Themen 4
N JScrollPane repaint(); geht nicht Java Basics - Anfänger-Themen 4
L JPanel vergrößern bis JScrollPane nicht mehr zu sehen Java Basics - Anfänger-Themen 7
H JTable in JScrollPane: Scrollbar wird nicht angezeigt. Java Basics - Anfänger-Themen 2
J JScrollPane wird nicht angezeigt Java Basics - Anfänger-Themen 4
A JScrollPane aktualisiert nicht Java Basics - Anfänger-Themen 2
S JScrollPane: Scrollbalken werden nicht angezeigt Java Basics - Anfänger-Themen 4
richis-fragen GlassPane über JScrollPane legen Java Basics - Anfänger-Themen 6
G Frage zu JScrollPane Java Basics - Anfänger-Themen 12
D JScrollPane mit TextArea Java Basics - Anfänger-Themen 5
T JScrollPane in den Code einbauen Java Basics - Anfänger-Themen 5
O JScrollPane zu gross für JTable Java Basics - Anfänger-Themen 2
L Jscrollpane nach zoomen anpassen Java Basics - Anfänger-Themen 20
T JScrollPane: Slider programmgesteuert verschieben? Java Basics - Anfänger-Themen 4
Kenan89 JScrollPane, aber kein Scrollbalken Java Basics - Anfänger-Themen 4
D jScrollPane Problem Java Basics - Anfänger-Themen 16
JStickman JTree, JScrollPane, Liste mit graphischer Suchleiste - Dateimanager Java Basics - Anfänger-Themen 10
A Button das JScrollPane aktualisiert Java Basics - Anfänger-Themen 11
T JScrollPane ganz runter Scrollen Java Basics - Anfänger-Themen 4
Z Label verschwindet in JScrollPane Java Basics - Anfänger-Themen 7
R JScrollPane in JTextArea benutzen Java Basics - Anfänger-Themen 10
O JScrollPane , JScrollBar Java Basics - Anfänger-Themen 3
Z JScrollPane zeigt Zeit als Datum Java Basics - Anfänger-Themen 5
E Breite des Schiebers in JscrollPane verändern Java Basics - Anfänger-Themen 2
T JScrollPane soll rechts gescrollt gezeichnet werden Java Basics - Anfänger-Themen 5
P JScrollPane Java Basics - Anfänger-Themen 18
J JScrollPane, Regler-Problem Java Basics - Anfänger-Themen 3
J JScrollPane swing Java Basics - Anfänger-Themen 8
_deleted Mehrere Panels untereinander im JScrollPane Java Basics - Anfänger-Themen 4
7 Java Swing: Wie JScrollPane zur JList hinzufügen? Java Basics - Anfänger-Themen 12
C jTabbedPane JScrollPane und jPanel Java Basics - Anfänger-Themen 3
S JScrollPane und JPanel Java Basics - Anfänger-Themen 2
J JScrollBar JScrollPane Java Basics - Anfänger-Themen 9
Q Anwendung eines JScrollPane Java Basics - Anfänger-Themen 2
M JScrollPane Java Basics - Anfänger-Themen 7
M Probleme mit JScrollPane Java Basics - Anfänger-Themen 5
G JScrollPane Java Basics - Anfänger-Themen 5
P Brauche Hilfe für JPanel im JScrollPane und Abstände Java Basics - Anfänger-Themen 2
M VisualEditor, Jlist und JScrollPane Java Basics - Anfänger-Themen 9
M JScrollPane soll inhalt zentrieren Java Basics - Anfänger-Themen 3
C Automatischer Umbruch bei JScrollPane? Java Basics - Anfänger-Themen 5
G JScrollPane + JTable + Autoscroll uvm. Java Basics - Anfänger-Themen 5
N JScrollPane mit JTextArea Java Basics - Anfänger-Themen 4
I Autoscrolling im JScrollPane Java Basics - Anfänger-Themen 3
H JScrollPane -> Problem bei ScrollBar Java Basics - Anfänger-Themen 3
lin JScrollPane & OutOfMemoryError Java Basics - Anfänger-Themen 6
G JScrollPane in der Größe bestimmen Java Basics - Anfänger-Themen 11
R JScrollpane problem Java Basics - Anfänger-Themen 21
P JScrollPane an JTextArea anhängen Java Basics - Anfänger-Themen 3
C JScrollPane ohne Rahmen? Java Basics - Anfänger-Themen 2
M JScrollPane Java Basics - Anfänger-Themen 4
G Probleme mit JScrollPane Java Basics - Anfänger-Themen 3
M JScrollPane: Autoscroll Java Basics - Anfänger-Themen 14
A "Hello World"-Programm läuft nicht Java Basics - Anfänger-Themen 16
D Regex greift nicht richtig Java Basics - Anfänger-Themen 4
richis-fragen JTable den angezeigten WERT nicht den Wert aus dem Model ausgeben. Java Basics - Anfänger-Themen 3
richis-fragen JTable Header ausgeblendete (width = 0) nicht per mouseDragged aufziehen. Java Basics - Anfänger-Themen 9
M Ausgabe einer ArrayList ensteht nur als Hashcode, nicht als Objekt Java Basics - Anfänger-Themen 16
K Warum wird mir auf der Konsole des Servers nicht "xxxx" angezeigt (Server/Client) Java Basics - Anfänger-Themen 4
K Warum wird hier nur etwas in eine txt Datei geschrieben und nicht in alle drei (InputStream/OutputStream/Reader/Writer) Java Basics - Anfänger-Themen 1
richis-fragen JTable effektiv angezeigter Text ausgeben nicht Inhalt vom Model Java Basics - Anfänger-Themen 9
S nach Import von jars (PLC4x) in Eclipse kann nicht mehr compiliert werden Java Basics - Anfänger-Themen 9
J Datenüberwachung funktioniert nicht Java Basics - Anfänger-Themen 9
S Wie debugge ich dies am besten: SingleThreadExecutor führt Task nicht aus..? Java Basics - Anfänger-Themen 29
H JDK installieren jdk-21 wird nicht erkannt Java Basics - Anfänger-Themen 13
N Klassen Hintergrundfarbe in JPanel ändert sich nicht Java Basics - Anfänger-Themen 3
K Warum wird mir "Empfangen vom Client:" nicht sofort ausgegeben(Server/Client) Java Basics - Anfänger-Themen 3
mo13 JTextField funktioniert nicht Java Basics - Anfänger-Themen 4
J .jar datei öffnen funktioniert nicht Java Basics - Anfänger-Themen 17
M Methode zielnah zeigt das gewünschte Ausgabe nicht an Java Basics - Anfänger-Themen 3
K Verstehe Rekursion nicht ganz Java Basics - Anfänger-Themen 7
M OOP Brüche nicht richtig berechnen Java Basics - Anfänger-Themen 3
N Ich kriege ganze zeit die Fehlermeldung "Inhalt der Zwischenablage kann nicht in die ausgewählten Elemente eingefügt werden" hat jemand eine Lösung? Java Basics - Anfänger-Themen 6
K TicTacToe belegtes feld nicht neu besetzbar Java Basics - Anfänger-Themen 1
K TicTacToe belegtes Feld nicht neu besetzbar Java Basics - Anfänger-Themen 3
A Warum wird mein jdk nicht gefunden? Java Basics - Anfänger-Themen 3
M Queue-Datenstruktur: nach dem Elementen entfernen, das Ergebnis ist immer noch nicht optimal. Java Basics - Anfänger-Themen 3
K Programm compilierbar aber nicht ausführbar... Java Basics - Anfänger-Themen 21
N Hey Leute und zwar versuche ich gerade ein 2D Spiel zu Programmieren aber die Figur will sich nicht nach links oder rechts bewegen :( Java Basics - Anfänger-Themen 12
G Mit jPackage erstellte EXE funktioniert nicht Java Basics - Anfänger-Themen 2
N BMI Rechner Was haltet ihr von dem Code habt ihr Verbesserungsvorschläge weil design teschnisch ist das nicht das geilste würde das gerne überarbeiten Java Basics - Anfänger-Themen 12
G Robot funktioniert nicht bei SelectionListener Java Basics - Anfänger-Themen 6
D MacOS: PDF erstellen geht nicht Java Basics - Anfänger-Themen 1
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
J jar Befehl wird nicht erkannt Java Basics - Anfänger-Themen 7
missy72 Erste Schritte (nicht) Deterministischer endlicher Automat Java Basics - Anfänger-Themen 9
T Getter/Setter - wie sieht ein Setter aus? Und wie nicht? Java Basics - Anfänger-Themen 34
T catch(InputMismatchException) wird nicht ausgefürt/erkannt Java Basics - Anfänger-Themen 12
T Methode akzeptiert String nicht Java Basics - Anfänger-Themen 18

Ähnliche Java Themen

Neue Themen


Oben