JTextArea
은 적절한 조건에서 다소 특별한 부작용이 있습니다. 나는 두 줄짜리 텍스트 에디터 (한 줄에 최대 2 줄의 글자 수 제한 문자)를 만들려고 할 때 실수로 우연히 발견했다 ...
기본적으로 올바른 레이아웃 관리자가 주어지면, 구성 요소의 크기가 변경 될 때 경우, 지금 추가
, 당신은 모니터링 할
ComponentListener
을 사용할 수 있습니다 ... 실제로 의미가 있지만, 나를 놀라게했다 - 그것의 자신의 협정으로 성장할 수 그게 니가 관심있어 ...
public class TestTextArea extends JFrame {
public TestTextArea() {
setLayout(new GridBagLayout());
JTextArea textArea = new JTextArea();
textArea.setColumns(10);
textArea.setRows(1);
textArea.setLineWrap(true);
textArea.setWrapStyleWord(true);
add(textArea);
setSize(200, 200);
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
textArea.addComponentListener(new ComponentAdapter() {
@Override
public void componentResized(ComponentEvent ce) {
System.out.println("I've changed size");
}
});
}
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
new TestTextArea();
}
}