簡體   English   中英

如何使用 JFileChooser 和 JLabel 將圖像上傳到 JTextArea

[英]How to upload image to JTextArea using JFileChooser and JLabel

我有一組我編譯的代碼沒有任何錯誤。 該代碼應該 select 從本地目錄中獲取一個圖像文件,並使用 JFileChooser 和 JLabel 上傳到 JTextArea。 但是在運行時,選擇的圖像沒有顯示。

下面是代碼片段。

JLabel jLab=new JLabel();
private void openActionPerformed(java.awt.event.ActionEvent evt){
    JFileChooser jfc=new JFileChooser();
    if(jfc.showOpenDialog(jMenu1)==JFileChooser.APPROVE_OPTION){
        java.io.File f=jfc.getSelectedFile();
        jLab.setIcon(new ImageIcon(f.toString()));
        jtextareaDisplay.add(jLab, 0);
    }
}
jtextareaDisplay.add(jLab, 0);

JTextArea 僅用於顯示文本,而不是圖像。

add(...) 方法不會做任何事情,因為 JTextArea 不使用布局管理器,所以任何組件的大小都是 (0, 0),所以沒有東西可以繪制。

如果您嘗試為文本區域創建背景,則需要通過覆蓋文本區域的 paintComponent() 來進行自定義繪制。

如果您真的想要一起顯示圖像和文本,那么您需要使用JTextPane JTextPane支持insertIcon(…)方法。

暫無
暫無

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

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