在JFrame.invalidate中调用pack()是一个不好的主意。
JFrame.invalidate()方法用于标记窗口的内容已经过期,需要重新绘制。而pack()方法用于根据窗口的内容重新计算窗口的大小。在JFrame.invalidate()中调用pack()可能会导致窗口的大小在每次重绘时都被重新计算,这可能会导致性能问题。
通常情况下,我们建议在需要重新计算窗口大小时才调用pack()方法,例如在添加或删除组件后。如果只是想标记窗口内容过期,可以直接调用JFrame.invalidate()方法,而不需要调用pack()。
总结起来,调用JFrame.invalidate()方法是合理的,但在该方法中调用pack()可能会引起性能问题,因此不建议这样做。
腾讯云相关产品和产品介绍链接地址:
- 腾讯云云服务器(CVM):https://cloud.tencent.com/product/cvm
- 腾讯云云数据库 MySQL 版:https://cloud.tencent.com/product/cdb_mysql
- 腾讯云云原生容器服务(TKE):https://cloud.tencent.com/product/tke
- 腾讯云人工智能:https://cloud.tencent.com/product/ai
- 腾讯云物联网平台(IoT Hub):https://cloud.tencent.com/product/iothub
- 腾讯云移动开发平台(MTP):https://cloud.tencent.com/product/mtp
- 腾讯云对象存储(COS):https://cloud.tencent.com/product/cos
- 腾讯云区块链服务(BCS):https://cloud.tencent.com/product/bcs
- 腾讯云虚拟专用网络(VPC):https://cloud.tencent.com/product/vpc