0

だから、私は持っていJTextAreaます。

ユーザーが 4 行以上のテキストを入力できないように設定する必要があります。行を数える方法を見つけました。ただし、コピー/貼り付けも考慮する必要があります。また、等幅フォントは使用していません。

これらすべてを考慮に入れた方法はありますか?

4

2 に答える 2

4

DocumentListenerを追加して、 でテキストが削除、挿入、または変更されるたびに行数を確認してみませんかJTextArea:

JTextArea.getDocument().addDocumentListener(new DocumentListener() {
  public void changedUpdate(DocumentEvent e) {
    check();
  }
  public void removeUpdate(DocumentEvent e) {
    check();
  }
  public void insertUpdate(DocumentEvent e) {
    check();
  }

  public void check() {
     if (JTextArea.getLineCount()>4){//make sure no more than 4 lines
       JOptionPane.showMessageDialog(null, "Error: Cant have more than 4 lines", JOptionPane.ERROR_MESSAGE);
     }
  }
});
于 2012-08-27T14:32:13.160 に答える