JDialog를 사용하여 사용자로부터 입력을받은 다음 찾아보기 대화 상자가 아닌 파일을 검색하는 애플리케이션이 있지만 메타 데이터를 사용하는보다 전문화 된 애플리케이션이 있습니다.대화 상자를 닫지 않고 값을 가져 옵니까?
이 모든 것이 정상적으로 작동합니다. 유일한 문제는 사용자가 검색 값을 입력하고 확인을 누른 다음 대화 상자를 닫지 않고 검색 및 일부 다른 작업 (대화 상자를 연 호출 클래스에서)을 받기 위해 이러한 값을받을 수있게하려는 것입니다.
호출 클래스에서 이러한 작업을 수행해야합니다. 이는 편집자의 플러그인에 포함되어 있기 때문입니다.
기본적으로, 짧은에이 종류의 어떤 편집기에서 대화 작품을 찾기 방법처럼 - 당신이 다음에 하나 개 발견 항목 ...에서 건너 뛸 동안 찾기 대화 상자가 열려 난 같은
보인다 간단한 것을 놓치기는했지만이 방법을 알 수는 없습니다.
편집 :
내가 닉 Rippe에 의해 제안 된 튜토리얼에 따라 간단한 테스트 응용 프로그램에서 이것을 시도,하지만 난 그것을 작동시킬 수 없기 때문에 내가 어떻게 든 오해 것 같아요. 나는 getter와 setter와 필드를 추가하고 그것을 얻으려고 :Main 클래스 : 폼 클래스에서
public class TestJFrames {
/**
* @param args the command line arguments
*/
public static void main(String[] args) {
TestForm frame = new TestForm();
frame.setDefaultCloseOperation(frame.DO_NOTHING_ON_CLOSE);
frame.addPropertyChangeListener("fileSelected", new FileSelectedListener());
frame.setVisible(true);
}
}
class FileSelectedListener implements PropertyChangeListener {
@Override
public void propertyChange(PropertyChangeEvent evt) {
System.out.println("TEST");
}
}
:
private String fileSelected;
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
this.setFileSelected("Test");
}
public String getFileSelected() {
return fileSelected;
}
public void setFileSelected(String fileSelected) {
this.fileSelected = fileSelected;
}
내가 다른 해결책을 찾기까지했다. 비슷한 어려움을 가진 다른 사람을 도울 수 있다면 여기에 게시하십시오. 대화 클래스에 리스너로 등록하여 호출하는 클래스의 버튼 이벤트를들을 수 있습니다. 나는이 예제를 거의 따라 갔다 : Create a custom event in Java
:
편집
여기에 약간의 튜토리얼 덤비는에서 예입니다. 거기에 어떤 코드가 있습니까? –
@AndrewThompson : 대화 상자를 닫음으로써 호출 클래스에 제어권 만 반환 할 수 있기 때문에 문제가 발생했습니다. 나는 당신이 종종 "SSCCE"를 사용하도록 제안하는 것을 알아 챘다. 나는 이것이 많은 경우에 좋은 생각이지만, 많은 경우에 어디서부터 시작해야할지 이해하지 못하는 경우가 많으므로 그렇게하기가 어렵습니다. – Anders
* "어디서부터 시작 해야할지 모르겠다. 대화를 닫음으로써 호출 클래스로 제어권을 되돌릴 수있다."* SSCCE를 게시하면 1) 어디서 왔는지 알 수 있습니다. 2) (우리가 원한다면) 템플릿은 누락 된 비트를 채워 질문에 답합니다. 모든 SSCCE가 해결하려고하는 문제를 성취하기 위해 진지한 시도를해야하는 것은 아니지만 그렇게한다면 더 좋습니다. –