안녕하세요, JPanel의 버튼에서 텍스트를 가져 오는 데 문제가 있습니다. 내 프로그램에는 JPanel이 있고 그 안에 4 개의 버튼이 있습니다. 각 버튼에는 텍스트로 표시되는 임의의 정수가 있습니다. 내 프로그램이 키보드에서 누른 키를 가져오고 해당 키가 버튼의 텍스트 (계산기와 같은 것)와 일치하는지 확인하기를 원합니다. 키가 JPanel의 버튼과 일치하면 해당 키를 인쇄하고 해당 버튼을 비활성화합니다.
내 코드는 다음과 같습니다.
private void formKeyPressed(java.awt.event.KeyEvent evt) {
Component[] comp = numpanel.getComponents();
for (int i = 0;i<comp.length;i++) {
if (comp[i] instanceof JButton) {
//check if it matches with any button's text
}
}
}
키와 버튼의 텍스트를 확인하기 위해 comp [i] .getText ()를 작성하려고하면 오류가 발생합니다. 내 이해에 따르면 comp [i]는 getText () 메소드가없는 Component라고합니다. 올바르게 이해하고 있습니까?
어떻게 고칠 수 있습니까? 아니면 대체 방법이 있습니까?
comp [i]가 getText () 메소드가없는 Component라고 말합니다. 올바르게 이해하고 있습니까?
예.
어떻게 고칠 수 있습니까? 아니면 대체 방법이 있습니까?
comp[i]
if 문 내에서 with를 확인한 것과 같이 JButton 이라는 것을 알고 있다면 JButton으로 instanceof
캐스팅하고 getText () 메서드를 사용할 수 있습니다.
.... = ((JButton)comp[i]).getText();
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다