我有一个 JTable 存储数据库查询的结果,到目前为止一切顺利。我想要的是每个表中的最后一列有一个可单击的 JButton,它将打开该行中表示的对象的编辑屏幕,这意味着该按钮需要从它的表中了解表中第一列的详细信息自己的行(来自数据库的 ID)。

有什么建议吗?我已经尝试过添加 JButtons,但是当我尝试运行它时它们变成了文本。

有帮助吗?

解决方案

与上面的教程相反,有一种方法可以做到这一点,无需复杂的定位数学、自定义鼠标侦听器和自定义表格模型。相反,可以使用遵循此处描述的模式的单个简单的自定义类来完成:

http://web.archive.org/web/20100623105810/http://ivolo.mit.edu/post/A-Simple-Pattern-for-Embedding-Components-into-a-Swing-JTable.aspx

其他提示

您还可以找到我的一个类似主题的教程(在这种情况下,使用一个JPanel)有帮助,以及:的与JTable中 Jbutton将自定义的JPanel细胞

看看Sun的介绍 JTable 组件,特别是关于的部分 编辑器和渲染器. 。它讨论了替代方案的使用 CellRenderers, , 和 CellEditors. 。您需要做的是创建(或借用) ButtonCellRenderer 和一个 ButtonCellEditor 然后将它们应用到您的相关列中 JTable. 。链接文章中找到的示例应该为您提供所需的所有信息。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top