Java Swing-在JTextArea中的两个文本点之间添加文本

Java Swing-在JTextArea中的两个文本点之间添加文本,java,swing,jtextarea,Java,Swing,Jtextarea,嗯,我决定编辑所有内容。代码是这样的: public void actionPerformed(ActionEvent e) { if (!uiCreator.getTextArea().getText().equalsIgnoreCase("Beggining text")) { JOptionPane.showMessageDialog(null, "You must have main method first", "Error",

嗯,我决定编辑所有内容。代码是这样的:

public void actionPerformed(ActionEvent e) {
        if (!uiCreator.getTextArea().getText().equalsIgnoreCase("Beggining text")) {
            JOptionPane.showMessageDialog(null, "You must have main method first", "Error",
                    JOptionPane.ERROR_MESSAGE);
        } else {
            n = Integer.valueOf(JOptionPane.showInputDialog("..."));
            l = Integer.valueOf(JOptionPane.showInputDialog("..."));
            uiCreator.getTextArea()
                    .setText("Beggining text with few additions");
在上面的代码中,我让它检查
JTextArea
是否包含所需的文本,如果不包含,它将显示一条错误消息。如果它这样做了,它将设置一个多几个字的文本

现在。我还有更多的
JButton
s。因此,如果单击一个,它也会执行相同的操作。检查文本,如果它满足所有条件,则设置新的修改文本。但是,现在,我的问题来了。我有这个:

public void actionPerformed(ActionEvent e) {
        if (!uiCreator.getTextArea().getText()
                .equalsIgnoreCase("Beggining text with few additions")) {
            JOptionPane.showMessageDialog(null, "Error, you don't have main or JFrame inside main", "Error",
                    JOptionPane.ERROR_MESSAGE);

        } else {
            uiCreator.getTextArea()
                    .setText("Beggining text with even more additions");
        }
检查
JTextArea
是否有“添加较少的Begging文本”,如果有,则将文本更改为添加更多内容的Begging文本。我还有几个按钮可以做同样的事情。现在,我想知道一种方法,可以让
setText(一些文本)
方法被使用,而不管是否有添加很少的乞讨文本或添加更多的乞讨文本。

不要使用setText(…)来不断替换所有文本

相反,您可以使用以下方法:

replaceSelection(...);

getDocument().insertString(...);

要更改部分文本或插入新文本。

只需修改
文本
属性即可<代码>字符串text=textArea.getText()。。。textArea.setText(text)