import java.io.*; import java.lang.Runtime; import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Cursor extends JFrame { private JTextArea textArea; public static void main ( String args[]) { Cursor example = new Cursor(); WindowAdapter windowAdapter = new WindowAdapter() { public void windowClosing( WindowEvent e ) { System.exit( 0 ); } }; example.addWindowListener( windowAdapter ); } private void showLine() { try { int line = textArea.getLineOfOffset((textArea.getCaretPosition())); System.out.println(line); int column = textArea.getCaretPosition() - textArea.getLineStartOffset(line); System.out.println("Column = " + column); } //catch(javax.swing.text.BadLocationException e) catch (Exception e) { } } public Cursor() { Container container = getContentPane(); textArea = new JTextArea(20,40); showLine(); KeyListener listener = new KeyListener () { public void keyPressed(KeyEvent e) { } public void keyTyped(KeyEvent e) { } public void keyReleased(KeyEvent e) { showLine(); } }; textArea.addKeyListener(listener); container.add(textArea); setSize( 500, 600 ); show(); } }