Java JComponent的最大大小

Java JComponent的最大大小,java,swing,dimensions,Java,Swing,Dimensions,JComponent的大小是否有硬限制?我不是说你可以通过setMaximumSize()设置的。我的意思是,有没有一个绝对的限制,它可以有多大?我对它所做的每一次搜索都只是给了我设置它的函数,但并没有说明它可以合法地得到多大。我所知道的是,我试着在9000x6000处制作一个,但它在任何一个维度上都不会超过某个值。(在JScrollPane中)我想知道实际值是多少。它依赖于硬件吗?我可以以某种方式访问此值吗?问题可能在于代码,而不是最大大小。您可能没有覆盖组件的getPreferredSize

JComponent的大小是否有硬限制?我不是说你可以通过
setMaximumSize()
设置的。我的意思是,有没有一个绝对的限制,它可以有多大?我对它所做的每一次搜索都只是给了我设置它的函数,但并没有说明它可以合法地得到多大。我所知道的是,我试着在9000x6000处制作一个,但它在任何一个维度上都不会超过某个值。(在
JScrollPane
中)我想知道实际值是多少。它依赖于硬件吗?我可以以某种方式访问此值吗?

问题可能在于代码,而不是最大大小。您可能没有覆盖组件的getPreferredSize()方法,因此scrollpane无法正常工作。发布演示问题的
SSCCE
。Derp。不要紧-那是我用来画画的
BufferedImage
。请注意,9000x6000可能还是太大了——当我把它做得足够大的时候,它会画出来,但它真的很慢,而且波涛汹涌。我想接下来的问题是,如何在不牺牲性能的情况下将一个非常大的可滚动图像放入Swing应用程序中……这将归结为两个因素,Integer.MAX和memoryYeah,幸运的是,它们没有接近Integer.MAX。我得到的大小也不应该耗尽内存,但它确实会在很大程度上影响性能。我只是想知道是否有一种简单的方法,只在内存中保存当前在屏幕上可见的JPanel部分,而不浪费时间思考当前看不到的所有内容。