我正在尝试编写一个程序,该程序允许我在图像上放置文本,并保存编辑后的图像。现在,我得到一个错误,指出:在图像上放置透明文本字段
Exception in thread "main" java.lang.IllegalArgumentException: adding a window to a container
当我运行代码,它显示的文本框,白色背景无我的形象。任何帮助,这将不胜感激。现在我只是专注于在图像上获取文本字段。先谢谢你! 这里是代码:
import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
import java.io.*;
import javax.imageio.*;
import javax.swing.*;
import java.util.TreeSet;
public class Try1 extends JFrame {
public Try1() {
initializeUI();
}
BufferedImage img;
public void paint(Graphics g) {
g.drawImage(img, 0, 0, null);
}
public void LoadImage() {
try {
img = ImageIO.read(new File("savedimage.jpg"));
}
catch (IOException e){}
}
private void initializeUI() {
JPanel panel = new JPanel(null);
setSize(400, 400);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JTextField textField = new JTextField(20);
textField.setBounds(50, 50, 100, 20);
panel.add(textField);
setContentPane(panel);
}
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
new Try1().setVisible(true);
}
});
JFrame f = new JFrame("Load Image Sample");
f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
f.add(new Try1());
f.pack();
f.setVisible(true);
}
}
感谢您的帮助,但我希望澄清一下。我试图设置'f'= new Try1();但是给我“错误:找不到符号。” JFrame f = new JFrame(“Load Image Sample”); f.addWindowListener(新WindowAdapter的(){ 公共无效的windowClosing(WindowEvent E){ System.exit(0);} }); 这就是我删除的所有内容。 这是现在有什么: f = new ImageTest(); f.pack(); f.setVisible(true); 如果我错过了什么,请告诉我。再次感谢你。 –