关于javaSE中eclipse 操作问题---为什么我右击source没有paint方法 90
packagea.b;importjava.awt.Graphics;importjavax.swing.JFrame;//首先做一个界面,这个界面400x400publ...
package a.b;
import java.awt.Graphics;
import javax.swing.JFrame;
//首先做一个界面,这个界面400x400
public class A extends JFrame { // Demo1 类就是一个界面类
public A() {
this.setLocation(100, 100);
this.setSize(400, 400);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 关闭方式
this.setVisible(true);
}
public static void main(String[] args) {
new A();
}
}
为什么我右击选中source----再选中override/implment menthod--- 再选中Container项,发现没有paint方法
为什么没有
我现在想重写从Container继承过来的paint方法:
自己手动添加不会报错 但是会好像进入一个死循环一样 JFrmae窗口会卡住 下载了几个eclipse都一样情况 展开
import java.awt.Graphics;
import javax.swing.JFrame;
//首先做一个界面,这个界面400x400
public class A extends JFrame { // Demo1 类就是一个界面类
public A() {
this.setLocation(100, 100);
this.setSize(400, 400);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);// 关闭方式
this.setVisible(true);
}
public static void main(String[] args) {
new A();
}
}
为什么我右击选中source----再选中override/implment menthod--- 再选中Container项,发现没有paint方法
为什么没有
我现在想重写从Container继承过来的paint方法:
自己手动添加不会报错 但是会好像进入一个死循环一样 JFrmae窗口会卡住 下载了几个eclipse都一样情况 展开
2个回答
展开全部
进入死循环,你不知道怎么调试代码运档?在你的 paint 下个断点,然后 Debug As Java Application 之后就可能在 Debug 视图中看到谁在调用你方法导致死循环,看线程调用堆栈。我觉得你可能是要改写 paintComponents 方法。芹没因为对于 Window 型组件来说,它除了普通的绘图之外还和操作系统有打交道的地方,因此不建议你直接覆盖掉 paint 方法,比如当我们想把窗口画成圆形卡通形,我们旁首乱知道在Windows 中当多个窗体叠加在一起时,点击哪个窗体的区域就会激活哪个程序,因此这部分功能就是Window 窗体型组件与操作系统打交道的地方。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询