Metua Geschrieben 9. Mai 2005 Geschrieben 9. Mai 2005 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: Zitieren
Jaraz Geschrieben 9. Mai 2005 Geschrieben 9. Mai 2005 Wie fügst du die Komponente der JScrollPane hinzu? Gruß Jaraz Zitieren
Metua Geschrieben 9. Mai 2005 Autor Geschrieben 9. Mai 2005 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 Zitieren
perdian Geschrieben 9. Mai 2005 Geschrieben 9. Mai 2005 Poste bitte mal den kompletten Quellcode, wo dein GUI erzeugt wird. So bringt die Fehlerbeschreibung nix. Zitieren
Metua Geschrieben 10. Mai 2005 Autor Geschrieben 10. Mai 2005 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... Zitieren
perdian Geschrieben 10. Mai 2005 Geschrieben 10. Mai 2005 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©; Zitieren
Metua Geschrieben 10. Mai 2005 Autor Geschrieben 10. Mai 2005 Probier einfach mal: jp = new JScrollPane©; Zitieren
perdian Geschrieben 10. Mai 2005 Geschrieben 10. Mai 2005 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. Zitieren
Metua Geschrieben 10. Mai 2005 Autor Geschrieben 10. Mai 2005 das funzt alles nicht, ich guck mal weiter und geb dir bescheid wenn ich was habe... grüße met Zitieren
perdian Geschrieben 10. Mai 2005 Geschrieben 10. Mai 2005 das funzt alles nichtDann 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. Zitieren
Metua Geschrieben 10. Mai 2005 Autor Geschrieben 10. Mai 2005 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 Zitieren
perdian Geschrieben 10. Mai 2005 Geschrieben 10. Mai 2005 JScrollPane kann nur ganz bestimmte Komponenten unterstützen: z.B. JEditorPane, JTextArea, JTree, JTableDas 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? Zitieren
Metua Geschrieben 10. Mai 2005 Autor Geschrieben 10. Mai 2005 Wo hast du denn die Info her, dass JPanel beispielsweise nicht unterstützt wird? Zitieren
perdian Geschrieben 10. Mai 2005 Geschrieben 10. Mai 2005 finde leider den link nicht mehr... sorry, aber war irgendwo in der api...Das glaube ich nicht eher, bis ich es gesehen habe - alleine schon aufgrund der Tatsache, dass ich wie gesagt noch nie solche Probleme gehabt habe. Und nochmal zum Thema JScrollPane: http://java.sun.com/docs/books/tutorial/uiswing/components/scrollpane.html Zitieren
etherius Geschrieben 11. Mai 2005 Geschrieben 11. Mai 2005 Wär mir aber auch recht neu dass JScrollPane keine JPanels unterstützt ... muss ich heute gleich mal testen Zitieren
perdian Geschrieben 11. Mai 2005 Geschrieben 11. Mai 2005 Wär mir aber auch recht neu dass JScrollPane keine JPanels unterstütztDas 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. Zitieren
Metua Geschrieben 11. Mai 2005 Autor Geschrieben 11. Mai 2005 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 Zitieren
Empfohlene Beiträge
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.