📄 tp_enumparas.htm
字号:
<HTML>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>Enumerating the Paragraphs of a JTextPane Component (Java Developers Almanac Example)
</TITLE>
<META CONTENT="Patrick Chan" NAME="AUTHOR">
<META CONTENT="Code Examples from The Java Developers Almanac 1.4" NAME="DESCRIPTION">
<META CONTENT="Addison-Wesley/Patrick Chan" NAME="OWNER">
<META CONTENT="3/20/02" NAME="revision">
<META CONTENT="no-cache" HTTP-EQUIV="Pragma">
<LINK href="/almanac.css" media="screen" type="text/css" rel="stylesheet">
</HEAD>
<BODY>
<TABLE CELLSPACING="0" CELLPADDING="0" BORDER="0">
<TR>
<TD></TD>
</TR>
</TABLE>
<br>
<TABLE CELLSPACING="0" CELLPADDING="0" BORDER="0">
<TR>
<TD></TD>
</TR>
<TR>
<TD rowspan="3"><A HREF="/?l=ex"><IMG BORDER="0" ALIGN="BOTTOM" HSPACE="10" SRC="/egs/almanac14a.jpg"></A></TD><TD VALIGN="top">
<h1>The Java Developers Almanac 1.4</h1>
<br>
Order this book from <a href="/cgi-bin/scripts/redirect.pl?l=ex&url=http://www.amazon.com/exec/obidos/ASIN/0201752808/xeo">Amazon</a>.
</TD>
</TR>
<TR>
<TD align="right" valign="bottom">
<FORM method="get" action="/cgi-bin/search/find.pl">
<INPUT size="25" name="words" type="text"><INPUT value="Search" type="submit">
</FORM>
</TD>
</TR>
</TABLE>
<HR color="#6666cc">
<TABLE CELLSPACING="0" CELLPADDING="0" BORDER="0">
<TR>
<TD valign="top"><script type="text/javascript">
<!--
google_ad_client = "pub-6001183370374757";
google_ad_width = 120;
google_ad_height = 600;
google_ad_format = "120x600_as";
google_ad_channel = "4777242811";
google_ad_type = "text_image";
google_color_border = "FFFFFF";
google_color_bg = "FFFFFF";
google_color_link = "6666CC";
google_color_url = "6666CC";
google_color_text = "000000";
//--></script><script src="http://pagead2.googlesyndication.com/pagead/show_ads.js" type="text/javascript"></script></TD><TD> </TD><TD valign="top">
<DIV ALIGN="LEFT">
<A HREF="/">Home</A>
>
<A HREF="../index.html">List of Packages</A>
>
<A HREF="../javax.swing.text/pkg.html">javax.swing.text</A><font color="#666666" class="xsmall-font">
[49 examples]
</font>
>
<B><A HREF="../javax.swing.text/pkg.html#JTextPane">JTextPane</A></B><font color="#666666" class="xsmall-font">
[5 examples]
</font>
</DIV><P>
<h3>e990. Enumerating the Paragraphs of a JTextPane Component</h3>
The contents of a text component are stored in a <code>Document</code> object
that in turn, breaks the content into a hierarchy of <code>Element</code>
objects. In the case of a text pane, the content elements contain
<font color="#0066ff"><i>runs</i></font> of characters. A run of characters is a contiguous span of
characters with the same attributes. Adjacent runs of characters will
have different sets of attributes. If the attributes of one run is
modified so that it becomes identical to an adjacent run, both runs
will be combined into a single run.
<P> Adjacent runs that make up a line of text (a contiguous span of
characters terminated by a single newline) are stored under one
paragraph element. In other words, a paragraph element will have at
most one run (the last run) with a single newline (only the very last
line of the contents may lack a newline). Note that the adjacency rule
does not apply to runs in different paragraph elements.
<P> Finally, all paragraph elements in a text pane are stored under
a single section element.
<P> See also <a href="../javax.swing.text/GetWrappedLines.html" class="eglink"><b>e973</b> Retrieving the Visible Lines in a JTextComponent</a>.
<pre> // Create a text pane
JTextPane textPane = new JTextPane();
// Get section element
Element section = textPane.getDocument().getDefaultRootElement();
// Get number of paragraphs.
// In a text pane, a span of characters terminated by single
// newline is typically called a paragraph.
int paraCount = section.getElementCount();
// Get index ranges for each paragraph
for (int i=0; i<paraCount; i++) {
Element e = section.getElement(i);
int rangeStart = e.getStartOffset();
int rangeEnd = e.getEndOffset();
try {
String para = textPane.getText(rangeStart, rangeEnd-rangeStart);
} catch (BadLocationException ex) {
}
}
</pre>
<P><table width="600" CELLSPACING="0" CELLPADDING="2" BORDER="0">
<tr>
<td bgcolor="#6666cc" align="center"><font color="#ffffff">
<b>Related Examples</b></font></td>
</tr>
</table>
e989. <a class="eglink" href="tp_StyledText.html?l=rel">
Inserting Styled Text in a JTextPane Component
</a>
<br>
e991. <a class="eglink" href="tp_ImageText.html?l=rel">
Inserting an Image into a JTextPane Component
</a>
<br>
e992. <a class="eglink" href="tp_CompText.html?l=rel">
Inserting a Component into a JTextPane Component
</a>
<br>
e993. <a class="eglink" href="tp_TabStops.html?l=rel">
Customizing Tab Stops in a JTextPane Component
</a>
<br>
<table width="600" CELLSPACING="0" CELLPADDING="2" BORDER="0">
<tr>
<td align="left">
<br>
See also:
<a class="eglink" href="/egs/javax.swing.text/pkg.html?l=rel#Actions%20and%20Key%20Bindings">
Actions and Key Bindings
</a>
<a class="eglink" href="/egs/javax.swing.text/pkg.html?l=rel#Caret%20and%20Selection">
Caret and Selection
</a>
<a class="eglink" href="/egs/javax.swing.text/pkg.html?l=rel#Events">
Events
</a>
<a class="eglink" href="/egs/javax.swing.text/pkg.html?l=rel#JEditorPane">
JEditorPane
</a>
<a class="eglink" href="/egs/javax.swing.text/pkg.html?l=rel#JFormattedTextField">
JFormattedTextField
</a>
<a class="eglink" href="/egs/javax.swing.text/pkg.html?l=rel#JTextArea">
JTextArea
</a>
<a class="eglink" href="/egs/javax.swing.text/pkg.html?l=rel#JTextComponent">
JTextComponent
</a>
<a class="eglink" href="/egs/javax.swing.text/pkg.html?l=rel#JTextField">
JTextField
</a>
<a class="eglink" href="/egs/javax.swing.text/pkg.html?l=rel#Styles">
Styles
</a>
</td>
</tr>
</table>
<br>
<br>
<FONT class="xsmall-font">
© 2002 Addison-Wesley.
</FONT></TD><TD> </TD><TD valign="top"><A href="http://compositesw.com/devzone?ref=javaalmanac"><IMG alt="Click Here" height="600" width="120" border="0" src="/csw_oad_120x600_final.gif"></A></TD>
</TR>
</TABLE>
</BODY>
<HEAD>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<META CONTENT="NO-CACHE" HTTP-EQUIV="PRAGMA">
</HEAD>
</HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -