Як уникнути перенесення в JTextPane.Java JDK1.5.
Остання зміна: 18 .0 3 .200 7
JTextPane є похідним класом від JEditorPane і має масу вбудованих методів для роботи з стилізованим текстом. Але недолік цього компонента в тому, що за замовчуванням проводиться автоматичне перенесення в рамках видимої області. Це продемонстровано в наступній програмі JTextPaneDemo1.java і на рис. 1.
* @author Victor Zagrebin .
public class JTextPaneDemo1 extends JFrame
public void init () throws Exception
JFrame jf = new JFrame ( "JTextPaneDemo 1");
Container contentPane = jf. getContentPane ();
JTextPane jtp = new JTextPane ();
JScrollPane jScrollPane 1 = new JScrollPane ();
jScrollPane 1. setBounds (new Rectangle (13, 16, 200, 100));
jScrollPane 1. getViewport (). add (jtp);
jf. setSize (200,100);
contentPane. add (jScrollPane 1);
jf. setVisible (true);
public static void main (String args []) throws Exception
<
JTextPaneDemo 1 jc = new JTextPaneDemo 1 ();
jc. addWindowListener (new WindowAdapter ()
<
public void windowClosing (WindowEvent e)
<
System. exit (0);
>
>);
Малюнок 1 - Автоматичне перенесення в компоненті JTextPane
Перша проблема, з якою стикається програміст - відсутній горизонтальний скролінг. Виставити примусово поява горизонтального скролінгу не дає ніяких результатів. У наступній програмі JTextPaneDemo2. java показано як вирішується дана проблема. У JTextPane слід перевизначити два методу setSize (Dimension d) і getScrollableTracksViewportWidth ().
* @author Victor Zagrebin .
public class JTextPaneDemo2 extends JFrame