package test;
import java.awt.BorderLayout;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextPane;
public class TestVisual extends JFrame {
private boolean wrapped;
private JButton toggleButton = null;
private JTextPane textPane = null;
private JPanel noWrapPanel = null;
private JScrollPane scrollPane = null;
public TestVisual() {
super();
init();
}
public void init() {
this.setSize(300, 200);
this.setLayout(new BorderLayout());
wrapped = false;
textPane = new JTextPane();
noWrapPanel = new JPanel(new BorderLayout());
noWrapPanel.add(textPane);
scrollPane = new JScrollPane(noWrapPanel);
toggleButton = new JButton("wrap");
toggleButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent e) {
if (wrapped == true){
scrollPane.setViewportView(noWrapPanel);
noWrapPanel.add(textPane);
toggleButton.setText("wrap");
wrapped = false;
}else {
scrollPane.setViewportView(textPane);
toggleButton.setText("unWrap");
wrapped = true;
}
}
});
this.add(scrollPane, BorderLayout.CENTER);
this.add(toggleButton, BorderLayout.NORTH);
}
}
私はあなたが...
を探しています。しかし、これはうまく機能している何のために他の方法を知りません。
(.. camickrの答えに基づいて、1)
あなたがのJTextFieldを使用していない理由をラップしたくない場合は? –
@Stefanos Kalantzis JTextFieldはJTextpaneと同じように多くのスタイル機能を提供しているとは思いません。 – GlassGhost
'JTextField'は単一行のテキストコンポーネントなので、単語ラップは意味を持ちません。おそらく 'JTextArea'を意味します。 –