簡體   English   中英

Java Eclipse文字編輯器

[英]Java Eclipse text editor

美好的一天。 所以我正在從事這個項目,並且有一個問題。 我有一個百科全書,我想添加一個文本編輯器。 我有一個文本和一個滾動面板,當我選擇一個文本句子並按一個按鈕時,我想要更改字體,使文本變為粗體,斜體,帶下划線等。我該怎么做?

我的代碼如下所示,text.txt是其中包含“ aaaa”的文本文件。

package test;

import java.awt.Color;
import java.awt.EventQueue;
import java.awt.Rectangle;
import javax.swing.JFrame;
import java.io.DataInputStream;
import java.io.FileInputStream;
import java.io.InputStreamReader;
import java.io.Reader;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;

public class test extends JFrame {
    private static final long serialVersionUID = 1L;
    JFrame test = new JFrame("test");

    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    test frame = new test();
                    frame.setVisible(false);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }

    public test() {
        setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
        setBounds(new Rectangle(0, 0, 0, 0));
        getContentPane().setLayout(null);

        test.setName("frame");
        test.setDefaultCloseOperation(JFrame.HIDE_ON_CLOSE);
        test.setBounds(300,0,800,800);
        test.setResizable(false);
        test.getContentPane().setLayout(null);

        JScrollPane text = new JScrollPane();
        text.setBackground(Color.DARK_GRAY);
        text.setBounds(0, 0, 500, 400);
        getContentPane().add(text);

        JTextArea textarea = new JTextArea();
        setBackground(Color.WHITE);
        textarea.setEditable(false);
        textarea.setWrapStyleWord(true);
        textarea.setLineWrap(true);
        try{
            FileInputStream fstream = new FileInputStream("D:\\Facultate\\anul 2\\Java Workspace\\test\\src\\text.txt");
            DataInputStream in = new DataInputStream(fstream);
            Reader reader = new InputStreamReader(in);
            textarea.read(reader, fstream);
        }catch(Exception e){System.err.println("Error: " + e.getMessage());}
        text.setViewportView(textarea);
    }
}

從文檔中:“ JTextArea是顯示純文本的多行區域。” 因此,如果要在一個區域中使用不同的字體等,則必須使用另一個控件,可能是RTFEditorKit

有一個很棒的Java自由文本編輯器。 您可以在“下載最適合您的需要的CKEditor軟件包”中找到它。 它是由Amazon Web Services分發的產品。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM