GUI 요소 액세스에 관한 질문이 있습니다. 예를 들어, Java에서 간단한 GUI 프로그램을 사용하면 트리 (예 : 메인 윈도우, 프레임, 버튼, 텍스트 필드, 콤보 박스 등)에서 Swing GUI 요소 계층 구조를 읽고 저장할 수 있습니다.Java GUI 읽기 및 저장
답변
스윙 응용 프로그램은 이미 나무로 구성되어 있습니다.
// Assuming component is a container
((Container)component).getComponents();
을 파일로 쉽게 조작이 요소입니다 저장 : 당신에 의해 얻을 수있는 하위 구성 요소가
Component[] components1 = mFrame.getContentPane().getComponents();
모든 구성 요소를 다음 JFrame의 어린이가 방문 할 수 루트입니다. 여기에 좋은 article 당신을 얻을 수 있습니다.
편집 스트림의 아름다움은 소켓 : 는 따라서 대신 소켓의 파일로 직렬화하는 ComponentSerializer 구성 요소를 회전을 사용하는 것처럼 당신이 파일을 사용할 수 있다는 점입니다 0 변경 :
이 필요 파일을 저장/읽으려는 JFrame이 있다고 가정하면 다음을 수행합니다.
OutputStream output = new FileOutputStream("FileName.bin");
JFrame myFrame = new JFrame();
ComponentSerializer serializer = new ComponentSerializer();
serializer.write(myFrame, output);
// Reading from file
InputStream in = new FileInputStream("FileName.bin");
ComponentSerializer serializer = new ComponentSerializer();
JFrame myFrame = (JFrame) serializer.read(in);
myFrame.setVisible(true);
또한'Serializable'에 대한 대안으로'XMLEncoder' /'XMLDecoder'를 고려하십시오. –
@ GETah : 구성 요소 및 하위 구성 요소를 사용하여 어떻게 수행 할 수있는 간단한 (전체) 예를 제공 할 수 있습니까? 이 GUI 구성 요소 (전체 트리)를보다 자동화되고 동적으로 캡처 할 수 있는지 생각 중이 었습니다. – 100798
답변 끝에 게시 한 기사에는 GUI 구성 요소를 serialize하고 네트워크를 통해 보내는 완벽한 예제가 포함되어 있습니다. 동일한 메커니즘을 사용하여 디스크에 물건을 저장할 수 있습니다. – GETah
- 1. URL에서 읽기 및 Java ArrayList에 저장
- 2. Java- 텍스트 파일 읽기 및 배열로 저장
- 3. Java GUI 및 스레드
- 4. Java 및 GUI 옵션
- 5. Java GUI 스윙, .txt 파일에서 읽기
- 6. 읽기 및 저장 ViewBag
- 7. Java GUI GUI
- 8. MVC 및 Java GUI Listener
- 9. GUI 스레딩 Java (및 SwingUtilities)
- 10. java - 최대 절전 모드 DB에서 저장 및 읽기
- 11. viewstate에 값 저장 및 읽기
- 12. Java GUI?
- 13. Java GUI + 서버 문제
- 14. 활동 gui 상태 저장
- 15. Java : GUI 내에서 GUI 개체 삭제
- 16. YouTube 플레이어의 Java GUI
- 17. Java Gui Menubars
- 18. Matlab2011a 및 64bit Win7의 Java GUI
- 19. SWIG를 통한 C++ 및 Java GUI 링크
- 20. SwingWorker 클래스의 Java GUI 및 다중 인스턴스
- 21. Java IPC : GUI 및 명령 줄
- 22. GUI, java, SWT 및 세계지도 표현
- 23. Java GUI 개발, JComponents 관리 및 설정
- 24. Java 예외 읽기 및 구문 분석
- 25. Java 애플릿 GUI 위치
- 26. Java Stack in GUI
- 27. 문자열 섹션에서 Java 읽기
- 28. 직렬 포트에 연결하는 Java GUI
- 29. JLabel 위치 - Java GUI
- 30. Java - gui : 문 추가하기
계층 구조에 액세스하거나 디스크에 직렬화 한 다음 나중에 다시 구성하는 방법에 대해 이야기하고 있습니까? – Bill
먼저이 계층 구조에 액세스해야하고 런타임에 UI 요소를 코드 내의 특정 이벤트와 관련시키기 위해 EventDispatcher를 사용해야하는 등의 다른 요소를 구현해야하므로 직렬화해야 할 수도 있습니다. 이게 내 목표 야, 그래서 가능하지? – 100798
당신이 무엇을 얻고 있는지 명확하지 않습니다. Gui의 이벤트를 매핑하여 코드의 특정 비트를 호출하는 것은 매우 간단합니다. – Bill