Я пытаюсь вставить текст JTextArea
в указанной позиции. Но продолжайте получать незаконные аргументы. Вот код.
import javax.swing.JTextArea;
import javax.swing.JFrame;
import java.awt.Color;
import javax.swing.JScrollPane;
import java.awt.FlowLayout;
import javax.swing.JButton;
import java.awt.Point;
public class TextWork{
public static void main(String[] args) {
JTextArea fnew = new JTextArea(20,20);
JFrame Main = new JFrame();
Main.setVisible(true);
Main.setResizable(true);
Main.setTitle("Gui");
Main.setSize(500,500);
Main.getContentPane().setLayout(null);
Main.setLocationRelativeTo(null);
Main.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
fnew.insert("Hello",5);
fnew.setBounds(100,100,100,100);
fnew.setEditable(false);
Main.add(fnew);
}
}
Согласно документации, если вы попытаетесь вставить текст через индекс, который превышает количество текста, уже присутствующего в компоненте, генерируется исключение.
Короче говоря, ваше текстовое поле пуст, поэтому попытка вставить текст в 5-м месте превышает длину текстового поля. Поскольку это первый раз, когда вы добавляете текст, вместо этого вы можете использовать setText("Hello")
.