簡體   English   中英

如何在有或沒有標題欄的情況下打印JFrame?

[英]How to print JFrame with or without Title Bar?

我的代碼基本上如下:

BufferedImage image = ......
Graphics g = image.createGraphics();
jFrame.printAll(g);

當我查看圖像時,標題欄區域始終為黑色...

有什么知道如何打印帶標題欄或不帶標題欄的jFrame嗎?

有什么知道如何打印帶標題欄或不帶標題欄的jFrame嗎?

僅打印內容窗格。

jFrame.getContentPane().printAll(g);

當我查看圖像時,標題欄區域始終為黑色...

Swing不會繪制標題欄(和邊框),因為它們是您所使用平台的一個窗口。

如果要獲取整個幀的圖像,則需要使用Robot.createScreenCapture() 屏幕圖像類將為您輕松完成此操作。

然后,您可以嘗試打印創建的BufferedImage。 我不確定執行此操作的最佳方法,但是您可以使用緩沖的圖像來創建ImageIcon。 然后,您可以將圖標添加到JLabel,然后打印標簽。 在執行此操作之前,您可能需要調用label.setSize(label.getPreferredSize())。

試試: yourFrame.setUndecorated(true);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM