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