[英]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.