私は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. JTextPaneの背景が透明になるようにする
- 2. Ebook Appsのスピーチアプリ
- 3. Ebook Java Card 3?
- 4. JTextPaneをフォーマットする
- 5. VS2015アップデート2のXamarinプロジェクトテンプレートがMicrosoft eBookと矛盾しているようです
- 6. eBook用2列css
- 7. eBookパーサー(.azw、.mobi、epub)?
- 8. Microsoft Commerce Server 2007 ebook
- 9. JTextPaneのハイパーリンクを無効にする
- 10. System.outをJTextPaneにリダイレクト
- 11. JTextPaneにアプレットを表示するには
- 12. 画像をJTextPaneに挿入する
- 13. JTextPaneでイメージを追加するには?
- 14. JTextPaneにメソッドを追加する方法
- 15. JTextPaneにツールチップを追加する
- 16. JTextPane - スクロールログを作成するには
- 17. イメージをJTextPaneに挿入するエラー
- 18. JTextPaneが特定の行にスクロールする
- 19. JTextPaneインデント
- 20. JTextPaneクリアテキスト
- 21. JTextPane liveness
- 22. MarqueePanelのJEditorPane/JTextPane
- 23. は、JTextPaneのコンテンツ
- 24. JTextPaneフッターの総ページ数はどのように表示されますか?
- 25. Amazon Product APIからKindle eBook貸出プロパティを取得するにはどうすればよいですか?
- 26. JTextPaneの行数を検出する
- 27. JtextPaneのマウスポインタを変更する
- 28. JTextPaneの印刷マージンを変更する
- 29. iphone:iPhone Ebook Appに電子メール機能を追加する方法
- 30. JTextPane不変のテキストブロック
はいている可能性が、予告 - >構築されたからJComponentのを使用していない、あなたの手でコードを書きました-in palette – mKorbel