Article View: be.comp.programming
Article #8779Re: java JEditorPane
From: Gunther
Date: Fri, 14 Jun 2002 21:07
Date: Fri, 14 Jun 2002 21:07
51 lines
2974 bytes
2974 bytes
"timvw" <timvw@tetrinet.be> wrote in message
news:aedjrq$630sa$1@ID-104709.news.dfncis.de...
> hallo,
>
> [knip]
> iemand die weet hoe ik de scrollPane kan laten meescrollen?
> heb al wat gezocht en geexperimenteerd met
> setCaretPosition(pane.getText().length())
> maar dit geeft steeds arrayOutOfBoundsExceptions :/
>
Vergeet niet dat posities in JEditorPane beginnen op 0,0 dus probeert is
setCaretPosition(pane.getText().length() - 1); en zie is of dat werkt. Als
dat nt werkt een alternatieve oplossing is met een document en
documentluisteraar werken dus:
DefaultStyledDocument doc = new DefaultStyledDocument();
pane.setDocument(doc);
//En dan documentluisteraar op document.
doc.addDocumentListener(new MyDocumentListener());
protected class MyDocumentListener implements DocumentListener {
public void insertUpdate(DocumentEvent e) {
verandering(e); //verandering in document
}
public void removeUpdate(DocumentEvent e) {
verandering(e); //verandering in document
}
public void changedUpdate(DocumentEvent e) {
verandering(e); //verandering in document
}
private void verandering(DocumentEvent e) {
Document doc = (Document) pane.getDocument();
Element e1 = pane.getDocument().getDefaultRootElement();
//haalt de structuur uit uw document
int einde =
e1.getElementIndex(doc.getEndPosition().getOffset());
pane.setCaretPosition(einde);
}
}
}
Nu zout ge ook gewoon tekst kunnen toevoegen via insertString methode van
klasse document ipv altijd volledige tekst opnieuw via setText zetten, kans
is dan dat de scrollPane wel meescrollt maar ben nt zeker, ik heb die
document listener ook nt getest dus laat weten als het marcheert :)
PS: ook voor den lujan?
Gunther.
Technical Details
Message-ID:
<3d0a5b87$0$8163$ba620e4c@news.skynet.be>Path:
arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-03!sn-xit-01!supernews.com!mtu.ru!news-out.nuthinbutnews.com!propagator-sterling!news-in.nuthinbutnews.com!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newspeer.clara.net!news.clara.net!news-x2.support.nl!skynet.be!skynet.be!louie!not-for-mailReferences:
<aedjrq$630sa$1@ID-104709.news.dfncis.de>Show Full Headers
Complete Article Headers
X-Google-Language: DUTCH,ASCII-7-bit X-Google-Thread: fcea4,6f7f83f55f029fd4 X-Google-Attributes: gidfcea4,public X-Google-ArrivalTime: 2002-06-14 14:12:06 PST Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!sn-xit-03!sn-xit-01!supernews.com!mtu.ru!news-out.nuthinbutnews.com!propagator-sterling!news-in.nuthinbutnews.com!news-spur1.maxwell.syr.edu!news.maxwell.syr.edu!newsfeed.icl.net!newspeer.clara.net!news.clara.net!news-x2.support.nl!skynet.be!skynet.be!louie!not-for-mail From: "Gunther" <warlock@nospamme@belgacom.net> Newsgroups: be.comp.programming References: <aedjrq$630sa$1@ID-104709.news.dfncis.de> Subject: Re: java JEditorPane Date: Fri, 14 Jun 2002 23:07:56 +0200 X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 Lines: 54 Message-ID: <3d0a5b87$0$8163$ba620e4c@news.skynet.be> Organization: -= Skynet Usenet Service =- NNTP-Posting-Host: 217.136.177.105 X-Trace: 1024088968 reader0.news.skynet.be 8163 217.136.177.105 X-Complaints-To: abuse@skynet.be