为什么从未调用paint() paintComponent()?

为什么从未调用paint() paintComponent()?,第1张

为什么从未调用paint()/ paintComponent()?

这些是原始代码导致其无法正常工作的主要问题:

  1. 在add() *** 作之后没有调用validate()
  2. 没有设置组件的首选大小。
  3. 覆盖它时未调用super.paintComponent()(这使setBackground()调用不起作用)
  4. 我需要从JPanel继承,以便对其进行绘制。Component和JComponent都不足以使setBackground()调用正常工作,即使在修复第3点时也是如此。

完成上述 *** 作后,只要我记得在开始时就调用了超级构造函数,那么调用方法paintComponent或paint实际上都没关系。

这个信息是由@ jitter,@ tackline和@camickr编写的,真是太赞了!

PS不知道如果回答您自己的问题被认为是不好的形式,但是由于我所需的信息是由多个答案组成的,因此我认为最好的方法是修改其他答案并写出这样的总结。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5091709.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-16
下一篇 2022-11-16

发表评论

登录后才能评论

评论列表(0条)

保存