Я использовал
textArea1=new TextArea(); String s=textArea1.getSelectedText(); g.drawRect(s.length(),s.length(),s.length(),s.length());
но он не работает, как ожидалось.
Ваш вопрос сбивает с толку.Вы используете тег Swing, но вы также используете текст TextArea, который является компонентом AWT, а не компонентом Swing.
Я бы предложил использовать Swing и JTextArea.В этом случае вы можете добавить «выделение» к указанному.Вот пользовательский класс, который позволяет вам использовать Rectangle Painter для этого выделения.