1

您好,我正在制作程序并使用TableModel. 我有 6 列用字符串归档。我希望第六列字符串使它看起来像 URL。当我的意思是看起来像 URL 时,我的意思是把它变成蓝色并加下划线。有可能这样做吗?

4

3 回答 3

2

您需要为您的 jtable 编写自定义 TableCellRenderer。请参阅此链接。这可能对您有所帮助。

于 2013-02-18T08:51:18.173 回答
1

我很确定您可以简单地创建一个包含

<html>...</html> 

它会起作用。只需像在 html 中一样在 html 标记中编码您的链接。如果您希望它显示为蓝色,则只需添加额外的代码。我认为:

<font color='blue'>

会做的

于 2013-02-18T07:11:40.480 回答
1

Sun 有一个关于创建 jtable的非常好的教程 ( http://docs.oracle.com/javase/tutorial/uiswing/components/table.html#modelchange )。在你开始之前通过它。希望本教程对您有所帮助。但以下是我的建议。

("<html><b><u>link</u></html>");

<html><b><a href="link">bold</a></b></html>

类似的东西

但是,我不建议仅仅为了显示效果而更改模型中的数据。相反,我会创建一个自定义单元格渲染器来完成此效果并将其设置在桌子上。您可以将文本包装在 HTML 中,也可以在渲染器上手动设置字体颜色和样式属性以模仿 html。

现在,即使您要在 html 中包含 url,您仍然无法单击它。表中没有组件。单击 url 时,您并不想进入编辑模式。您只想打开该链接。为此,您将向表本身添加鼠标侦听器。当您收到点击事件时,您将通过编程确定它结束的单元格,返回您的模型并获取 url,最后使用其他 Java API 调用打开该 url。

于 2013-02-18T08:50:13.337 回答