私はNetbeansを持つテキストエディタを持っています。ここで、テキストをJtextPaneにロードします。テキストが大きすぎると、横スクロールの助けを借りて読むことができます。たとえば、24行のページにテキストを分割し、スクロールせずにすべてのページを表示し、ページを変更するために次のページボタンを使用する方法はありますか? eBookのように)?JtextPaneをeBookのようにする
0
A
答えて
1
新しいページにスクロールするたびに表示する行数を簡単に指定できるため、JTextAreaを使用する方が簡単です。
基本的な解決策は、スクロールバーを非表示にするよりもスクロールペインにテキスト領域を追加することです。次に、垂直スクロールバーのデフォルトのアクションを使用して、スクロールを行います。以下のコードは、簡単にあなたがのJButtonに追加できるアクションを作成するためにAction Map Actionブログエントリからのコードを使用しています:
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
public class TextAreaScroll extends JPanel
{
private JTextArea textArea;
public TextAreaScroll()
{
setLayout(new BorderLayout());
textArea = new JTextArea(10, 80);
textArea.setEditable(false);
JScrollPane scrollPane = new JScrollPane(textArea);
scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_NEVER);
add(scrollPane);
JButton load = new JButton("Load TextAreaScroll.java");
load.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
try
{
FileReader reader = new FileReader("TextAreaScroll.java");
BufferedReader br = new BufferedReader(reader);
textArea.read(br, null);
br.close();
}
catch(Exception e2) { System.out.println(e2); }
}
});
add(load, BorderLayout.NORTH);
// Add buttons to do the scrolling
JScrollBar vertical = scrollPane.getVerticalScrollBar();
Action nextPage = new ActionMapAction("Next Page", vertical, "positiveBlockIncrement");
nextPage.putValue(AbstractAction.MNEMONIC_KEY, KeyEvent.VK_N);
JButton nextButton = new JButton(nextPage);
Action previousPage = new ActionMapAction("Previous Page", vertical, "negativeBlockIncrement");
previousPage.putValue(AbstractAction.MNEMONIC_KEY, KeyEvent.VK_N);
JButton previousButton = new JButton(previousPage);
JPanel south = new JPanel();
add(south, BorderLayout.SOUTH);
south.add(previousButton);
south.add(nextButton);
}
private static void createAndShowUI()
{
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(new TextAreaScroll());
frame.pack();
frame.setLocationRelativeTo(null);
frame.setVisible(true);
}
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
createAndShowUI();
}
});
}
}
関連する問題
- 1. Ebook Appsのスピーチアプリ
- 2. Ebook Java Card 3?
- 3. VS2015アップデート2のXamarinプロジェクトテンプレートがMicrosoft eBookと矛盾しているようです
- 4. JTextPaneのハイパーリンクを無効にする
- 5. System.outをJTextPaneにリダイレクト
- 6. eBookパーサー(.azw、.mobi、epub)?
- 7. Microsoft Commerce Server 2007 ebook
- 8. eBook用2列css
- 9. JTextPaneにアプレットを表示するには
- 10. JTextPane - スクロールログを作成するには
- 11. 画像をJTextPaneに挿入する
- 12. JTextPaneにツールチップを追加する
- 13. JTextPaneでイメージを追加するには?
- 14. イメージをJTextPaneに挿入するエラー
- 15. JTextPaneフッターの総ページ数はどのように表示されますか?
- 16. JTextPane liveness
- 17. JTextPaneインデント
- 18. JTextPaneクリアテキスト
- 19. Amazon Product APIからKindle eBook貸出プロパティを取得するにはどうすればよいですか?
- 20. JtextPaneのマウスポインタを変更する
- 21. iphone:iPhone Ebook Appに電子メール機能を追加する方法
- 22. JTextPane不変のテキストブロック
- 23. JTextPaneのSwingx検索
- 24. Java JTextPane italics help
- 25. Java JTextPane HTMLイメージクッキー
- 26. JTextAreaまたはJTextPaneカラムをクリック可能にするにはどうすればよいですか?
- 27. JTextPaneでオフセットの表示位置(x、y)を見つけるにはどうすればよいですか?
- 28. JTextPaneの行にカスタム背景色を設定するには
- 29. JTextPaneの特定のドキュメントモデルにEditorKitをバインドする
- 30. JTextPaneの代替テキストの色
はいている可能性が、予告 - >構築されたからJComponentのを使用していない、あなたの手でコードを書きました-in palette – mKorbel