JComboBox 드롭 다운 목록에서 값을 설정하려면 JTable의 첫 번째 열의 내용을 사용해야합니다. JTable이 다른 Form (JFrame)에있어, 비공개 JComboBox에 직접 액세스 할 수없는 것이 문제입니다. JTable Form에서 JComboBox Form으로 신호 및/또는 이벤트를 보내서 드롭 다운 내용을 업데이트해야한다는 것을 알 수 있습니까? 나는 데이터에 대해 걱정하지 않는다. 공개 String []이나 뭔가를 만들 수는 있지만 JComboBox에 업데이트 자체를 필요하다고 알리는 방법은 무엇일까?다른 폼에서 컨트롤을 수정하는 방법은 무엇입니까?
답변
는 I는
JComboBox
드롭 다운 목록에서 값 설정JTable
첫 열의 내용을 사용할 필요가있다. 문제는JTable
이 다른 양식 (JFrame
)이므로JComboBox
개인에 직접 액세스 할 수 없기 때문입니다.
그리고 왜 JComboBox
과 JTable
은 서로 액세스해야합니까? 그것들은 단지 뷰 구성 요소입니다. 표를 표시하지 않고 (예 : 테스트 중) 콤보 상자를 표시하려면 어떻게됩니까? JTable
에서 직접 데이터를 검색하는 경우 심각한 문제가 있습니다. JTable
을 만들었을 때 JTable
의 실제 데이터가 포함 된 TableModel
이있었습니다. 공유되어야하는 모델 (또는 적어도 해당 모델의 데이터)입니다.
그래서 콤보 박스의 모델과 테이블의 모델이 같은 데이터를 공유하게되면 모든 것이 잘 될 것입니다.
당신이 말하는 말이 정확합니다. 테이블 데이터는 파일에 저장됩니다. 하지만 사용자가 테이블을 변경할 때 콤보 상자의 내용을 업데이트하는 방법이 필요했습니다. 표가 포함 된 양식은 변경해야 할 때만 일반적으로 표시되지 않습니다. 표에 대한 변경 사항은 comboBox가 업데이트 할 수있는 파일에 저장되지만 comboBox는 업데이트시기를 알아야합니다. ActionListener 자습서를 찾으려고하는데 페이지가 누락되었습니다 (http://docs.oracle.com/javase/tutorial/post1.0/ui/eventmodel.html). – jacknad
@jacknad'TableModel'은 데이터가 변경되었을 때 이벤트를 발생시킵니다. 해당 모델에 리스너를 추가 할 수 있습니다. – Robin
원래 답변으로 돌아가서 나는 콤보 박스와 테이블이 동일한 데이터를 공유하도록 할 것입니다. 이제는 공유 된 데이터로 콤보 박스를 수정하는 방법을 알아야합니다.하지만 다른 문제입니다. 대단히 감사합니다. – jacknad
- 1. 폼에서 컨트롤을 분리하는 솔루션
- 2. 다른 실행중인 윈도우 폼에서 컨트롤을 C#
- 3. WinForms 폼에서 깜박임을 수정하는 방법?
- 4. 폼을 액세스하고 모체 폼에서 액세스 컨트롤을 상속하는 방법은 무엇입니까?
- 5. 폼에서 많은 컨트롤을 처리하는 방법?
- 6. 부모 폼에서 사용자 컨트롤을 제거
- 7. 다른 프로세스에서 textview를 수정하는 방법은 무엇입니까?
- 8. 세로 스크롤이있는 리피터 컨트롤을 사용하여 테이블의 헤더를 수정하는 방법은 무엇입니까?
- 9. VB.NET의 부모 폼에서 사용자 컨트롤을 동적으로 정렬
- 10. accepts_nested_attributes_for를 수정하는 방법은 무엇입니까?
- 11. 다른 컨트롤을 포함 할 수없는 컨트롤을 만드는 방법은 무엇입니까?
- 12. WPF에서 다른 컨트롤에 컨트롤을 연결하는 방법은 무엇입니까?
- 13. Gridview에서 다른 컨트롤을 추가하는 방법은 무엇입니까?
- 14. GridView에서이 셀을 수정하는 방법은 무엇입니까?
- 15. Windows 폼에서 WPF 사용자 지정 컨트롤을 사용합니까?
- 16. 제어판에서 컨트롤을 제거한다고해서 폼에서 컨트롤이 제거되지 않습니까?
- 17. 다른 폼에서 클래스 호출하기
- 18. 다른 폼에서 하나의 호출
- 19. NoClassDefFoundError를 수정하는 방법은 무엇입니까?
- 20. 배열을 수정하는 방법은 무엇입니까?
- 21. SmsManager를 수정하는 방법은 무엇입니까?
- 22. Visualbasic.net에서 Vscroll 컨트롤을 폼에 추가하는 방법은 무엇입니까?
- 23. IFrame에서 깜박임을 수정하는 방법은 무엇입니까?
- 24. KeyValuePair 값을 수정하는 방법은 무엇입니까?
- 25. Django에서 개체를 편집 폼에서 업데이트하는 방법은 무엇입니까?
- 26. m2eclipse 플러그인을 수정하는 방법은 무엇입니까?
- 27. django 폼에서 manyTomany 인라인을 편집하는 방법은 무엇입니까?
- 28. .NET 컨트롤을 CODE로 직렬화하는 방법은 무엇입니까?
- 29. GridView의 너비를 수정하는 방법은 무엇입니까?
- 30. 모델을 세션에서 수정하는 방법은 무엇입니까?
jframe 외부에서 콤보 박스에 액세스해야하는 경우 공개로 설정하십시오. 더 나은 방법은 그 값을 반환하는 공용 메서드를 추가하는 것입니다. – SJuan76
JComboBox를 공개하지 않는 것 같습니다. 넷빈 팔레트에서 사용한 스윙 컨트롤입니다. JComboBox 모델을 변경하려는 공용 메서드를 반환하려고했지만 컴파일러에서 정적이 아닌 변수 (JComboBox)를 정적 컨텍스트의 참조가 될 수 없다는 불만을 제기했습니다. – jacknad
콤보 상자에 리스너를 추가하고 상태를 업데이트 할 수 있습니다. – SJuan76