Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo,

ich habe einen Container, der über eine schleife mit JPanels gefüllt wird, und habe den wiederum in ein Jscrollpane gepackt...nur leider kann ich nicht scrollen. Hat einer vielleicht einen Vorschlag, woran das liegen könnte?

danke schon mal

der met :confused:

Geschrieben

ich mach:

1. container erzeugen

2. mit jpanel befüllen

3. den Jscrollpane mit dem container im Konstruktor erzeugen.

new JScrollPane(container);

danke im voraus

met

Geschrieben

hallo perdi,

also das Jpanel wird in einer eigenen Klasse gebaut (pannel extends Jpanel),

das gui für das hauptdenster sieht so aus:

public void guiCapture(){

URL url = ClassLoader.getSystemResource ("images/logo.GIF");

Image img = getToolkit().getImage(url);

setIconImage(img);

setTitle("blablabla");

setSize(1100,600);

setResizable(false);

setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

c = new Container();

}

dann füll ich den Container c:

for(int i = 0; i < currentRow; i++){

pannel = new Pannel_ds();

Hashtable ht = (Hashtable) vec.get(i);

pannel.a.setText((String)ht.get("text"));

pannel.b.setText( (String)ht.get("text"));

pannel.h.setText((String)ht.get("text"));

pannel.d.setText((String)ht.get("text"));

pannel.e.setText((String)ht.get("text"));

pannel.f.setText((String)ht.get("text"));

pannel.g.setText((String)ht.get("text"));

pannel.setBounds(0,boundVO,1024,100);

boundVO = boundVO + 103;

c.add(pannel);

}

dann leg ich den Container in das ScrollPane

jp = new JScrollPane();

jp.setViewportView( c );

das alles wird in folgender reihenfolge im konstruktor ausgeführt:

1. guiCapture

2. schleife(vorher noch ne abfrage die die contents für die textfelder im pannel holt)

3. container ins jscrollpane

danke für die unterstützung...

Geschrieben

jp = new JScrollPane();

jp.setViewportView( c );

Sowas habe ich bisher noch nie gesehen.

Vom ViewPort sollte man eigentlich die Finger lassen - es sei denn, man weiss genau, was man tut.

Probier einfach mal:

jp = new JScrollPane©;

Geschrieben

Probier mal deinen ganzen Komponente-Baum konsequent auf Swing umzustellen. Container ist AWT, wenn du selber Komponenten gruppieren willst dann nutze ein JPanel.

Das Mischen von AWT und Swing-Komponnenten führt immer wieder zu seltsamen Ergebnissen.

Geschrieben
das funzt alles nicht
Dann geh systematisch vor. Fang am besten bei Null an.

Erstelle ein Panel.

Klappt das?

Füge einen Button hinzu.

Noch immer okay?

Füge einen weiteren Button hinzu.

Alle Buttons okay?

JScrollPane drüberlegen.

So kannst du wenigstens den genauen Punkt bestimmen, wo es nicht mehr so läuft, wie du willst.

Geschrieben

JScrollPane kann nur ganz bestimmte Komponenten unterstützen:

z.B. JEditorPane, JTextArea, JTree, JTable

d.h. Container gehören, so wie auch JPanel´s usw. nicht zu den unterstützten Komponenten.

ich hab das ganze nun mit hilfe einer JTable gelöst und bin ganz zuversichtlich.

vielen dank für die schnellen antworten, insbesondere an perdi...

thx a lot

met :D

Geschrieben
JScrollPane kann nur ganz bestimmte Komponenten unterstützen:

z.B. JEditorPane, JTextArea, JTree, JTable

Das wäre mir neu. Also ich habe definitiv in eine JScrollPane schon JPanel, JLabel, JTabbedPane und diverse andere Komponenten gepackt, und das hat immer wunderbar funktioniert.

Wo hast du denn die Info her, dass JPanel beispielsweise nicht unterstützt wird?

Geschrieben
Wär mir aber auch recht neu dass JScrollPane keine JPanels unterstützt
Das wäre schon fast ein NoGo-Kriterium für das gesamte Swing Framework. Wie will ich sonst ein Eingabeformular mit, sagen wir mal, 20 Eingabefeldern untereinander darstellen?

Die bekomme ich nur in einem panel vernünftig gruppiert, und mir kann niemand erzählen, dass Sun nicht wenigstens soweit denkt, das ganze scrollable zu machen.

Ne ne, JScrollPane funktioniert mit jeder JComponent.

Geschrieben

hey leute, keine aufregung

wahrscheinlich stand es nur beispielhaft da und ich habs für mehr gehalten...ich nehme an, dass ich was überlesen habe.

auf jeden fall habe ich jetzt die Panels in eine JTable gelegt und die dann ins scrollpane. seit dem funzt alles prima.

met :rolleyes:

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.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...