public class ScrollToLastRunner extends JFrame { public JTextPane text; public JScrollPane textContainer; public JTextField input; public JButton sender;
public ScrollToLastRunner() { this.setSize(400,400); text = new JTextPane(); textContainer = new JScrollPane(text); input = new JTextField(); sender = new JButton("add"); sender.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { text.setText( text.getText()+input.getText()+"\n");
Jeg tror at det kan have noget at gøre med at jeg i mit JTextPane anvender et Document.. og at jeg når jeg tilføjer en linie så kalder jeg metoden doc.insertString() og ikke en setText metode på panet...
Så jeg skal nok have en eller anden document listener...
Hmm... selv med følgende kode virker det, som du vil have det - [...SNIP...] public class ScrollToLastRunner extends JFrame { [...SNIP...] public Document doc;
public ScrollToLastRunner() { this.setSize(400, 400); text = new JTextPane(); doc = text.getDocument();
Det er harskt det her... kan ikke helt se hvad der skal gøres... En JScrollPane burde have den egenskab at man kan fortælle den hvor slideren skal være!!! F.eks. i bunden eller i toppen!!!
Og hvis jeg scroller op i min app, og derefter trykker på add, så springer scrollbaren ned i bunden af JTextPane't igen... Jeg forstår ikke, hvorfor det ikke virker for dig...
Jeg kan sende koden, hvis du vil prøvekøre app'en... /Søren
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.