对于我当前的项目,我正在编写一个基于JTable的GUI。其中一个主要特点是能够在运行时调整所有单元的大小,具体取决于内容(随时间变化)。当前应用程序启动时,所有单元格的高度和宽度都相同。我想将其改为更复杂的方法。我想知道是否有可能确定“内容”所需的空间能够正确显示。这是没有太多的空间或切割的东西。计算JComponent的不同子类所需的显示空间
“内容”是初学者的字符串。它是从数据库加载的,我无法对此做任何假设。它可能为空。在这种情况下,相应单元应该有任何种类的默认大小。
从长远来看,将会显示所有不同类型的内容,如图片,视频等。
我试着用FontMetrics来计算字符串的长度。但是因为我使用JTextPanes来显示它们,所以我无法完全确定它的工作原理。我认为这与JTextPanes自动换行有关,因为有时这些行没有填满。这搞砸了我的计算。
长话短说:我需要某种设计指南来实现上面描述的功能。我相信你们中的一个聪明人知道如何去做。
由于提前, 德凯
什么是你确切的问题,计算或显示?你想要自定义什么,给定行的高度或给定列的宽度? – 2010-07-26 08:39:38
问题是计算所需的空间。我想定制单元格的两个尺寸。用户应该能够点击一个单元格,并且该单元格应该变大。所有这些已经实施。所以问题是,如何确定细胞应该如何“大”。 – user402026 2010-07-26 08:54:06
而单元格的尺寸仅取决于单元格的字符串内容,是不是? – 2010-07-26 09:08:13