Java在调整大小或鼠标悬停时是否重新绘制组件?
我不是在问如何使用JavaSwing,也不是在问关于使用布局管理器的建议。我只是好奇Java的行为 一直以来,这都是一个神话,许多人推测,当您调整框架大小时,Java会自动重新绘制组件,或者将鼠标移到框架中的组件上 所以我的问题是:当我们执行上述操作之一时,Java是否会自动重新绘制Java在调整大小或鼠标悬停时是否重新绘制组件?,java,swing,repaint,Java,Swing,Repaint,我不是在问如何使用JavaSwing,也不是在问关于使用布局管理器的建议。我只是好奇Java的行为 一直以来,这都是一个神话,许多人推测,当您调整框架大小时,Java会自动重新绘制组件,或者将鼠标移到框架中的组件上 所以我的问题是:当我们执行上述操作之一时,Java是否会自动重新绘制 有几篇文章标题类似,如: 但是,没有人能够给出一个明确的答案:Java是否会在某些用户操作(如调整大小和鼠标悬停)时自动重新绘制 一直以来,这是一个神话,许多人猜测 没有神话或猜测 调整大小时自动重新绘制零部件
有几篇文章标题类似,如: 但是,没有人能够给出一个明确的答案:Java是否会在某些用户操作(如调整大小和鼠标悬停)时自动重新绘制 一直以来,这是一个神话,许多人猜测 没有神话或猜测 调整大小时自动重新绘制零部件 这是有意义的,因为会调用布局管理器,并且大小或位置可能会更改,这意味着某些组件可能需要重新绘制 当鼠标悬停在框架中的组件上时,自动重新绘制组件 这取决于组件。如果组件中添加了鼠标侦听器以进行特殊处理(即翻转按钮),则可以重新绘制组件,否则不会发生任何情况。但是没有默认的绘制,除非它是作为组件UI的一部分专门添加的 这些问题很容易被证实。只需重写组件的
paintCompent()
方法,即可在绘制组件时显示一条消息,并查看发生了什么
一直以来,这是一个神话,许多人猜测
没有神话或猜测
调整大小时自动重新绘制零部件
这是有意义的,因为会调用布局管理器,并且大小或位置可能会更改,这意味着某些组件可能需要重新绘制
当鼠标悬停在框架中的组件上时,自动重新绘制组件
这取决于组件。如果组件中添加了鼠标侦听器以进行特殊处理(即翻转按钮),则可以重新绘制组件,否则不会发生任何情况。但是没有默认的绘制,除非它是作为组件UI的一部分专门添加的
这些问题很容易被证实。只需重写组件的
paintCompent()
方法,以便在绘制组件时显示一条消息,并查看发生了什么情况。我使用一些println语句重写了repaint()方法和paintComponent()方法,但即使调整框架大小,它也不会显示任何内容。您确定应用程序触发的
绘制正在使用paintComponent()而不是其他方法吗?是。您是否阅读了问题初始评论中提供的链接?您还可以阅读上的Swing教程中的部分。我用一些println语句覆盖了repain()方法和paintComponent()方法,但即使在调整帧大小时,它也不会显示任何内容。您确定应用程序触发的
绘制正在使用paintComponent()而不是其他方法吗?是。您是否阅读了问题初始评论中提供的链接?您还可以阅读上的Swing教程中的部分。张贴你的文章,说明问题所在。