javafx 애플리케이션 메뉴 항목에서 Jasper Report에 JRViewer
이 포함 된 스윙 JDialog
을 표시하십시오. 그러나 JDialog
은 setModal(true)
이후에도 MODAL이 아니며 javafx 스테이지가 소유하지 않습니다. 어떻게 javafx 단계를 소유자가 JDialog
의 만들 수 있습니까? 또는 javafx 스테이지, 장면 내에서 Jasper 보고서를 표시하는 방법?javafx 스테이지를 JDialog의 소유자로 만드시겠습니까?
답변
javafx 스테이지, 장면 내에서 재스퍼 보고서를 표시하는 방법은 무엇입니까?
Output HTML from your Jasper report 보고서를 JavaFX WebView에로드하십시오.
javafx 스테이지를 JDialog의 소유자로 만드시겠습니까?
나는 이것이 가능하지 않다고 생각합니다. 응용 프로그램을 Swing 응용 프로그램으로 만들고 Swing JFrame 내부의 JFXPanel 안에 JavaFX 콘텐츠를 호스팅하는 것이 무엇보다 효과적입니다. 그런 다음 스테이지가없고 JDialog의 소유자는 JFXPanel을 호스팅하는 JFrame이 될 수 있습니다.
JDialog를 사용하지 마십시오. JavaFX에서는 Stages을 사용합니다. Jasper 보고서를 Scene 안에 넣고 장면을 스테이지에 넣으십시오. 난 당신이 자바 FX 구성 요소 내부 스윙 구성 요소를 넣을 수 없습니다 생각, 그래서 당신은이 링크를 확인해야하십시오처럼 정확하게 작동합니다
Stage stage = new Stage();
stage.setTitle("Title");
stage.setResizable(false);
stage.initModality(Modality.APPLICATION_MODAL);
stage.initOwner(primaryStage);
stage.initStyle(StageStyle.UTILITY);
(...)
Scene scene = new Scene(...);
stage.setScene(scene);
스테이지 위의 코드에서하십시오 자바 FX 대화 상자를 만들 수 Integrating JavaFX into Swing Applications
코드 대화.
또한이를 확인 :
을 지금은 자바 FX의 스윙 내용이 jdk8
에 도입되어 있기 때문에
은 당신이 지금 필요한 것은 JDK 8
를 설치하는 것을 할 수 있어요
@FXML
private SwingNode swingNode;
...
JasperPrint jasperPrint = JasperFillManager.fillReport(FileName, hash, connect);
swingNode.setContent(new JRViewer(jasperPrint));
오라클 그냥 순수 자바 FX 코드 당신은 내가 자바 FX 8의 JasperReports를 인쇄 미리보기 단계 클래스를 작성했습니다
oracle tutorial embed swing in javaFX
이 링크를 따라 할 수있는 다음이 너무
에 대한 튜토리얼을 추가 할 필요가 없다 SwingNode 클래스 사용.
JRViewer와 비교하면 링크 및 부품을 지원하지 않지만 인쇄 미리보기 창에는 필요하지 않습니다. 반면에 코드는 훨씬 더 짧아서 이해하기 쉽고 모든 사람의 필요를 더 쉽게 받아 들일 수 있습니다.
이 클래스의 소스 코드는 GitHub repository에서 무료로 사용할 수 있습니다.
첫 번째 (기본) 질문으로 돌아 가기 : 스테이지를 JDialog의 소유자로 만들 수 없습니다.당신이 (AWT-) 프레임 또는를 찾을 때까지 단, SwingNode의 내용을 설정 한 후
swingNode.setContent(xxx);
당신은 ((... 너무 XXX의 부모의 부모가 될 수 있음) AWT를 XXX의 부모를 얻을 수 있습니다 -) 대화 상자. SwingNode의 경우 JLightweightFrame입니다. 이 객체를 소유자로 사용하여 JDialog를 만들 수 있습니다.
그러나 JavaFX SwingNode 메커니즘에 버그가 있다고 생각합니다. JDialog는 모달 (setModal(true)
)으로 설정하면 기능적 모달로 표시되지만 주 (JavaFX) 창 뒤에 나타날 수 있습니다. 메인 윈도우를 움직여서 앞쪽으로 가져 오는 것이 가능합니다. 모달 대화 상자가 있다면 가능하지 않아야 할 것이 있습니다. 그러나 이것은 또 다른 주제입니다.
- 1. Actionscript 2로 스테이지를 투명하게 만드시겠습니까?
- 2. 기존 JDialog의 양식 변경
- 3. 알림으로 JDialog의 깜박임/깜박임
- 4. JDialog의 쇼에서 애니메이션 그리기
- 5. JDialog의 체크 박스 목록
- 6. require_owner 코드는 소유자로
- 7. 빈 스테이지를 클릭하거나 최소한 스테이지를 확인하는 것을 방지하려면 어떻게해야합니까?
- 8. JavaFX 대화 상자 만들기
- 9. PHP 소유자로 폴더 만들기 99
- 10. 레벨/스테이지를 기반으로 클래스를로드 중입니까?
- 11. Torus 3d in javaFX 2.x
- 12. java - JDialog의 JPanel에서 수행 된 동작 감지
- 13. JDialog의 제목 표시 줄에서 이미지 가져 오기
- 14. Popup JDialog의 기본 Java 클래스가 있습니까?
- 15. JavaFX 스트레스 테스트가 실패했습니다
- 16. Codeigniter는 특정 페이지 요소를 프로필 소유자로 제한합니다.
- 17. 다른 폼의 소유자로 MDI 자식을 설정하는 방법?
- 18. VB6 양식의 소유자로 창 핸들 사용
- 19. 다른 스레드에서 스테이지를 만들 때 IllegalStateException이 발생했습니다.
- 20. 기본 스테이지에 새 스테이지를 추가하는 방법은 무엇입니까?
- 21. actionscript 3.0에서 스테이지를 움직일 수 있습니까?
- 22. Actionscript3에서 클래스 내에서 스테이지를 이동하는 방법은 무엇입니까?
- 23. kineticjs 스테이지를 다른 캔버스에 복사하는 방법
- 24. clutter_actor_animate를 사용하여 창/스테이지를 이동하는 방법은 무엇입니까?
- 25. JavaFX Datagrid
- 26. JavaFX Designer
- 27. StyleableProperty JavaFx
- 28. javafx 스크롤바
- 29. JavaFX 애니메이션
- 30. JavaFX 인쇄
JavaFX 구성 요소를 Swing 구성 요소의 소유자로 만들 수 없습니다. – ceklock