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:

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

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