基本上我有这个代码
ImageIcon image = new ImageIcon(this.getClass().getResource("http://i.imgur.com/UKmK7j0.jpg")); //Image is just an example
public void paintComponent(Graphics g) {
super.paintComponent(g);
image.paintIcon(null, g, x, y);
}
但它告诉我
“对象类型
未定义paintComponent(Graphics)方法我做错了什么?请帮帮我
答案 0 :(得分:3)
这很可能是因为您没有扩展正确的课程。您需要扩展JPanel
或包含它的任何其他类以调用此超类。现在它正在寻找默认超类中的paintComponent()
方法Object
并且那里没有paintComponent()
方法。
public class myClass extends JPanel {
...
}
答案 1 :(得分:1)
您对super.paintComponent(g)
的调用正在寻找超类中的paintComponent()
方法。这可能是因为您尝试在不是JComponent
的子类的类中使用此方法,该类是具有paintComponent()
方法的类。请参阅JComponent。
很可能,您希望使您的类成为JPanel
的子类,或者是JComponent