【问题标题】:printing JPanel without displaying it to screen打印 JPanel 而不将其显示到屏幕上
【发布时间】:2011-05-29 03:22:09
【问题描述】:

我有 2 节课。第一个类包含一个要打印的 JPanel。第二类打印第一类的JPanel。如何打印出第一类的 JPanel 而不显示在屏幕上?

【问题讨论】:

  • -1,你为什么转发这个问题?你在 11 小时前问了同样的问题。 (stackoverflow.com/questions/6162833/…) 为什么要删除旧问题?我已经给你答案了。你从来没有费心回复这个建议。即使它不起作用,也应该将问题留在那里,以便其他人知道建议的内容,并且不要浪费时间提出相同的建议。
  • @camickr:“..我已经给你答案了。” (沉思)可能和我刚才给出的答案一样。
  • @Andrew,是的,这是建议之一。
  • 它可以工作,但它不能完全满足我的需要.....无论如何谢谢大家

标签: java swing printing jpanel


【解决方案1】:

试试Sreen Image 类。

【讨论】:

    【解决方案2】:

    替代您的问题,因为 Swing API 可以做到这一点

    对于使用Absolute Positioning 放置的JComponent,不需要可见以获得最终大小,

    1/ 缺点

    Absolute Layout setLaout(null) 是如何布局 JComponents 的最后一个属性

    必须创建两个Top-Level Containers

    • a) JFrame 用于可见的 JComponents
    • b) JDialog 用于将输出打印到打印机

    忘记您将即时创建此 JDialog,因为您的应用程序可能会保存 100Mb 或 500Mb 的 RAM,只创建一次 JDialog 并将其内容放入 JPanel 并在打印后从 JDialog 中删除 JPanel对于另一个重用,请确保您设置为

    myDialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
    

    2/优点

    这是可能的:-)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-11-14
      • 2010-12-23
      • 2013-05-28
      • 1970-01-01
      • 2018-11-15
      相关资源
      最近更新 更多