Swing 渲染器在列中显示完整文本会创建无限循环

2023-12-31

我想渲染一个摆动表,根据列中显示的文本量来调整行的高度,以便所有文本都显示在单元格中。

问题是,当我设置行的高度时,会创建无限循环。我该如何解决呢?

这是我的渲染器

final class RenderTextAreaMessage extends DefaultTableCellRenderer {

  JTextArea textareaMessage;

  @Override 
  public Component getTableCellRendererComponent(JTable aTable, Object aNumberValue, boolean aIsSelected, 
    boolean aHasFocus, int aRow, int aColumn ) {  
     System.out.println("aa");
     String value = (String)aNumberValue;

     textareaMessage = new JTextArea();

     textareaMessage.setLineWrap(true);
     textareaMessage.setWrapStyleWord(true);
     textareaMessage.setText(value);
     textareaMessage.setBorder(null);
     textareaMessage.setMargin(null);

    Component renderer = super.getTableCellRendererComponent(
            aTable, aNumberValue, aIsSelected, aHasFocus, aRow, aColumn
    );

      Font fontType = textareaMessage.getFont();
      FontMetrics fontMet = textareaMessage.getFontMetrics(fontType);
      int fheight = fontMet.getHeight();

      int lineCount = textareaMessage.getLineCount();
      int rowHeight = lineCount * fheight;

      aTable.setRowHeight(aRow,rowHeight+6);      

    return textareaMessage;
  }
}

None

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Swing 渲染器在列中显示完整文本会创建无限循环 的相关文章

  • Java Swing BoxLayout 忽略 AlignmentX

    在下面的代码中 通过调用setAlignmentX with Component LEFT ALIGNMENT我希望在居中的滑块上获得左对齐的标签 由于某种原因 标签也居中 似乎与传递给 setAlignmentX 的值无关 我必须向 se
  • Android:java.lang.OutOfMemoryError:

    我在 Android 上开发了一个使用大量图像的应用程序 可绘制文件夹中有很多图像 比如说超过 100 张 我正在开发图像动画应用程序 我使用 imageview 来显示 GIF 图像 我使用了将 gif 图像分割成多个 PNG 格式图像的
  • 如何在ArrayList中的特定位置插入对象

    假设我有一个大小为 n 的对象的 ArrayList 现在我想在特定位置插入另一个对象 假设在索引位置 k 大于 0 且小于 n 并且我希望索引位置 k 处及其之后的其他对象向前移动一个索引位置 那么有没有什么方法可以直接在Java中做到这
  • 类型已知,但方法指的是缺失类型

    我对 java 和 Eclipse 不太有经验 但遇到以下问题 我正在写类似的东西 Point3D myPoint myClass myMethod arg 我收到错误 方法 myMethod myType arg 引用缺失的类型 Poin
  • Apache Thrift Java-Javascript 通信

    我正在编写一个基于 Apache Thrift 的 Java 服务器 它将从 Javascript 客户端接收数据 我已经完成了 Java 服务器 但问题是我可以获得 Javascript 客户端的工作示例 我无法找到一个好的示例 构建文档
  • 为什么通过 方法向 List 添加元素(类型正确)会出现编译错误? [复制]

    这个问题在这里已经有答案了 我对泛型通配符概念几乎没有疑问 1 假设我有一个方法 void write List
  • H2数据库:如何进行加密保护,而不暴露文件加密密钥

    我们在服务器模式下使用Java H2数据库 因为我们不希望用户访问数据库文件 为了对数据库文件添加更多保护 我们计划使用 AES 加密 将 CIPHER AES 添加到数据库 URL 以防存储被盗 但是 每个用户在连接时还需要提供文件保护密
  • Selenium 和 TestNG 同时使用“dependsOn”和“priority =”问题

    我正在努力在 GUI 自动化测试中实现更好的工作流程控制 我首先从dependsOn开始 但很快发现缺点是如果一个测试失败 则套件的整个其余部分都不会运行 所以我改用 priority 但看到了意外的行为 一个例子 Test priorit
  • 使用全局变量从内部函数获取空字符串

    请帮助我解决一些小问题 我确信你能做到 D 我试图在 firestore 文档 user cases information 上设置一个字段 其中包含一个字段 case number 首先我声明这个全局变量 private String c
  • Java Junit 测试 HTTP POST 请求

    我需要测试以下方法而不改变方法本身 该方法向服务器发出 POST 方法 但我需要制作一个独立于服务器的测试用例 在将其重定向到本地文件之前 我测试了类似的方法 但为此我将协议指定为文件 主机名指定为 localhost 端口指定为 1 我的
  • FileObserver 不适用于 Android 6.0 Marshmallow (API 23) 中的外部存储

    我有一个应用程序可以观察外部存储上的公共目录FileObserver 它运行良好Lollipop设备 我想添加对Marshmallow 所以我用它设置了一台 Nexus 9 平板电脑 在 Marshmallow 设备上 它失败 在 Loll
  • 绘制平滑曲线

    我想创建更平滑的曲线 而不仅仅是线角 这是我现在画的图 这是我的代码 case FREEHAND float pts float ptk ptk new float 2 imageMatrix invert inv if mCurrentS
  • for循环中更新JLabel的问题

    我的程序的想法是从之前在其他 JFrame 中保存的列表中选择一个名称 我想在标签中一个接一个地打印所有名称 它们之间有很小的延迟 然后停在其中一个名称上 问题是lbl setText String 如果有多个则不起作用setText co
  • 如何在Netbeans中设置JList的ListModel?

    我在 Netbeans IDE 的帮助下设计了一个 Swing GUI 该 GUI 包含一个 JList 默认情况下 它使用 QAbstractListModel 将其作为 JList 构造函数中的参数传递以创建该 JList 我想在 Ne
  • 如何在 Eclipse 中获得完全限定的类名?

    有没有一种快速方法可以在 Eclipse 中单击 Java 类并获取其完全限定名称 或将其复制到剪贴板 2016年6月29日编辑 正如 Jeff 所指出的 您只需要执行以下第二步 1 Double click on the class na
  • 从 CLI 部署 Maven 项目?

    在 IDE 中构建并运行良好 cd home thufir NetBeansProjects HelloMaven JAVA HOME usr lib jvm java 8 openjdk amd64 home thufir local s
  • JERSEY:错误跟踪:java.lang.IllegalStateException:实体输入流已关闭

    我正在使用 Jersey 2 x 以下是我的控制器 GET Path id Produces application json public Response getUser PathParam id int userId Context
  • jDBI中如何进行内查询?

    我怎样才能在 jDBI 中执行这样的事情 SqlQuery select id from foo where name in
  • 为什么 java.util.Arraylist#clear 按照 OpenJDK 中的方式实现?

    http grepcode com file repository grepcode com java root jdk openjdk 6 b14 java util ArrayList java 473 http grepcode co
  • 使用 Java 8 Spring 4 + MyBatis 集成问题

    使用 Java 8 1 8 0 60 Spring 4 2 1 和 MyBatis 3 3 0 时遇到以下异常 Sep 29 2015 11 02 58 AM org springframework context annotation A

随机推荐

  • 使用 FormData 和 multer 上传文件

    我已成功使用以下命令将文件上传到节点服务器multer通过使用输入文件对话框选择文件然后提交表单来模块 但现在我需要创建一个FormData对象 并使用发送文件XMLHttpRequest 但它不起作用 文件总是undefined在服务器端
  • kubespray 仪表板警告禁止弹出窗口

    我正在尝试使用 kubespray 在一台机器上设置一个新的 kubernetes 集群 提交 7e84de2ae116f624b570eadc28022e924bd273bc 运行剧本后 在新的 ubuntu 16 04 上 我打开仪表板
  • knockout.js 真的采用了 MVVM 模式吗?

    我是 knockout js 的新手 不久前我读到了 ko 的标题特征 我不明白ko真的是MVVVM吗 因为他们谈论的只是数据绑定及其易用性 但我确信 MVVM 不仅仅是数据绑定 不是吗 是的 knockout js 确实应用了 MVVM
  • 如何使用 sqlalchemy 在 Docker 中访问 postgresql?

    我正在尝试使用 SQLAlchemy 与 dockerized PostgreSQL 服务器交互 就像是 engine create engine postgresql user user password localhost 5432 d
  • 如何在RTL中使用时钟门控?

    我正在对一些时钟进行门控latch以及我设计中的逻辑 我在综合和布局布线方面没有太多经验 在 RTL 中实现时钟门控的正确方法是什么 示例1 always comb begin gated clk clk latch update en e
  • 如何使用 connect w/ Redux 从 this.props 获得简单的调度?

    我有一个简单的 React 组件 可以连接 映射一个简单的数组 状态 为了避免引用商店的上下文 我想要一种直接从道具获取 调度 的方法 我见过其他人使用这种方法 但由于某种原因无法使用它 以下是我当前使用的每个 npm 依赖项的版本 rea
  • 在表单提交时,从 javascript 发送带有表单值的 mailto

    我有一个表单 当提交表单 输入类型 提交 时 我想使用预先填充的电子邮件消息打开客户端默认邮件浏览器 因此 当用户单击提交时 需要发生两件事 打开电子邮件并提交表格 另外 如何使用表单中输入的值来预填充电子邮件 我是 javascript
  • 找不到创建 iOS 应用程序开发证书的选项 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 请参阅此图片 iOS 应用程序开发选项已禁用 我如何启用它 您需要成为团队代理或管理员才能创建开发证书 Source https deve
  • C++ 错误:与“operator=”不匹配

    给数组赋值时遇到问题 我创建了一个名为Treasury 我创建了另一个类TradingBook我想包含一个全局数组Treasury可以从所有方法访问TradingBook 这是我的 TradingBook 和 Treasury 的头文件 c
  • 如何将数据传输到另一个页面

    海 我有一个包含 150 个控件的 ASP NET 页面 我想将这些控件的数据传输到另一个 ASP NET 页面 什么方法最适合这项任务 控制数量可能会增加 提前致谢 有很多方法 使用查询字符串 可能不适用于您的情况 仅适用于传输少量数据
  • 引用 IBM.Data.DB2 中的代码使得该程序集对我的解决方案的其余部分不可用

    我有一个包含三个程序集的 C 控制台应用程序 Main Common and Utilities 在一个文件中Main集会 Main cs 我有一行 using Utilities 在目录内Common程序集 我有DLLIBM Data D
  • 从 pmdarima 导入 auto_arima 时:错误:无法从 'scipy.misc' 导入名称 'factorial'

    我有 python 3 7 1 和 scipy 版本 1 3 0 我在调用 auto arima 时遇到错误 无法从 scipy misc 导入名称 factorial 只是这个基本的导入导致了问题 从 pmdarima arima 导入
  • Angular2 CLI:为什么“--prod”的包大小小于“--prod --aot”?

    我正在为一个项目使用最新的 angular cli beta 18 我知道 cli 仍处于非常早期的阶段 但我很困惑为什么我的最终包大小实际上更小without AoT 当我跑步时ng build prod 为 1 08 MB Asset
  • 将命令发送到现有 MATLAB IDE 命令窗口

    打开 MATLAB IDE 后 我们是否仍然可以从另一个进程写入其命令窗口 在 Windows 中 我们可以使用 MATLAB Engine API 附加到现有的 MATLAB 但这在 Linux Mac 中不起作用 Linux 下我们有什
  • 在 AngularJS 的 ionic 框架中使用 ui-router

    我正在开发一个使用离子框架的应用程序 这又使用了 ui router 目前 我有一个非常基本的两页应用程序 然而 它会扩大到更大 此时 当我从第一个视图转换到第二个视图时出现错误 错误说 TypeError Cannot read prop
  • 如何解决 Media type=multipart/form-data 错误未找到 MessageBodyWriter

    如何为简单的多表单帖子配置提供程序 任何建议 指示将不胜感激 堆栈跟踪 org glassfish jersey message internal MessageBodyProviderNotFoundException MessageBo
  • 从 ControlTemplate 中的样式 DataTrigger 进行模板绑定

    在下面的 XAML 中 我使用带边框的矩形作为 ToggleButton 的模板 我希望 BorderBrush 具有不同的颜色以反映 ToggleButton IsChecked 的变化值 不幸的是 我在这里尝试在 DataTrigger
  • pcap 纳秒 Python

    有没有办法使用现有的 python 库从 pcap 中获取纳秒 我有一个纳秒 pcap 文件 可以与 Wireshark 配合使用 但与 Python 配合使用效果很好库甚至不会导入该文件 此功能确实存在于 c libpcap 中 请参阅
  • YouTube v3 API 对于有效请求返回状态代码 400

    目前 我正在尝试使用 OAuth 对 YouTube API 执行看似简单的请求 我可以使用评论端点成功请求评论列表 但是 当尝试删除评论或设置其审核状态时 就会出现此问题 在审核状态更新的情况下 我将向以下地址执行 POST 当然使用有效
  • Swing 渲染器在列中显示完整文本会创建无限循环

    我想渲染一个摆动表 根据列中显示的文本量来调整行的高度 以便所有文本都显示在单元格中 问题是 当我设置行的高度时 会创建无限循环 我该如何解决呢 这是我的渲染器 final class RenderTextAreaMessage exten