Java JTextArea:计数字符

Java JTextArea:计数字符,java,Java,Eclipse | Netbeans | jdk 1.7 大家好 需要对JTextArea的字符进行计数;做会计很容易。但是,您还必须考虑删除带有退格的字符的可能性;这就是问题出现的地方,在某一时刻,当不再有字符,并且您一直按Backspace时,帐户显示为负数 如何正确计数字符并避免负记帐? 已经非常感谢了我不确定你是怎么做到的,因为你遇到了问题,或者你到底做了什么。但是,因为您不想共享代码,所以这里有一个代码片段可以满足您的要求:计算JTextArea中的字符数 public static

Eclipse | Netbeans | jdk 1.7

大家好

需要对JTextArea的字符进行计数;做会计很容易。但是,您还必须考虑删除带有退格的字符的可能性;这就是问题出现的地方,在某一时刻,当不再有字符,并且您一直按Backspace时,帐户显示为负数

如何正确计数字符并避免负记帐?


已经非常感谢了

我不确定你是怎么做到的,因为你遇到了问题,或者你到底做了什么。但是,因为您不想共享代码,所以这里有一个代码片段可以满足您的要求:计算
JTextArea
中的字符数

public static void main(String[] args) {
    SwingUtilities.invokeLater(new Runnable() {

        @Override
        public void run() {
            buildGui();
        }
    });
}

private static void buildGui() {

    JFrame frame = new JFrame();
    JPanel panel = new JPanel();
    JTextArea textArea = new JTextArea(5, 20);
    JLabel labelCounter = new JLabel("# of chars: 0");
    textArea.addKeyListener(new KeyAdapter() {
        // When a key press is registered, notify the label
        public void keyReleased(KeyEvent e) {
            labelCounter.setText("# of chars: " + textArea.getText().length());
        }
    });
    panel.add(labelCounter);
    panel.add(textArea);
    frame.add(panel);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.pack();
    frame.setVisible(true);
}

你能分享你已经得到的吗?