java - JComponent不同子类所需显示空间的计算

标签 java user-interface swing

对于我当前的项目,我正在编写一个基于 JTable 的 GUI。主要功能之一是能够在运行时根据内容(随时间变化)调整所有单元格的大小。目前,当应用程序启动时,所有单元格都具有相同的高度和宽度。我想将其更改为更复杂的方法。我想知道是否可以以某种方式确定“内容”正确显示所需的空间。也就是说没有太多的空白空间或削减了一些东西。

“内容”是一个供初学者使用的字符串。它是从数据库加载的,我无法对此做出任何假设。它可能为空。在这种情况下,相应的单元格应该有任何类型的默认大小。

从长远来看,将会有各种各样的内容被展示,比如图片、视频等。

我尝试使用 FontMetrics 来计算字符串的长度。但由于我使用 JTextPanes 来显示它们,我无法让它正常工作。我认为这与 JTextPanes 自动换行有关,因为有时行没有填满。这搞砸了我的计算。

长话短说:我需要某种设计指南来实现上述功能。我确信你们中的一个聪明人知道如何做到这一点。

提前致谢, 德凯

最佳答案

也许文本 Pane 大小计算在这个 How can I measure/calculate the size a Document needs to render itself?会帮助你的。

关于java - JComponent不同子类所需显示空间的计算,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3333215/

相关文章:

javascript - JSON 对象图形用户界面

java - JDK-7 SwingWorker 死锁?

在 Java 的 TextArea 中使用文档监听器时出现 java.lang.IllegalStateException

java - java 类的隐式 jsonFormat

java - Firefox 和 Safari 中的 JSESSIONID 路径不同

java - 如何从数组中选择一个值?

java - 在JAVA中只解析一次XML文件

asp.net - 有没有好的 web.config 编辑器?

java - GUI Java 之间的通信

java - 从线程中的不同类运行 GUI