我写了一个巫术观众。
然而,我发现挥杆有一个限制。如果您有一个3GB文件,并且每行呈现20个像素,则组件的总高度为:
(每行3GB/ 16字节)*每行20像素= 3.75GB
此时,Swing无法呈现任何内容,因为值溢出了Integer.MAX_VALUE。
到目前为止,这是我最好的主意:
这似乎是很多工作,但这样的组件可能对大图或大文本文档之类的东西很有用。
我考虑过只分页,但是当您使用Find特性并且它与跨越页面边界的文本匹配时,似乎会很尴尬。
我通常使用的(非Java)十六进制查看器(十六进制)也不使用分页。它只是滚动整个文档的高度,好像它不是一个问题。
有谁知道避开这类事情的好方法吗?
发布于 2013-11-24 07:42:31
您不需要在长坐标中绘制您的十六进制查看器,因为您只需要绘制文件中想要在当前可见的部分。JScrollPane是一个非常有用的工具,可以在大型组件中滚动,但您不需要它。如果您想滚动太多的东西,以至于有一个足够大的组件来容纳它是很麻烦的,那么您可以通过创建一个JScrollBar并根据滚动条的位置绘制组件来进行滚动。
https://stackoverflow.com/questions/20164842
复制相似问题