2013-02-18 31 views
1

你好我正在制作一个程序和使用TableModel。我有6列与字符串的提交。我希望第六列字符串看起来像URL。当我的意思是看起来像URL,我的意思是把它变成蓝色,并加下划线。有可能这样做吗?使字符串看起来像表模型中的URL

回答

1

太阳对cerating 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,最后使用其他Java API调用来打开该URL。

1

我敢肯定,你可以简单地创建一个包含

<html>...</html> 

一个字符串,它会工作。就像在html中一样,在html标签内编写链接。如果您希望它显示为蓝色,您只需添加额外的代码即可。我认为:

<font color='blue'> 

会做

2

您需要为您的jtable编写自定义TableCellRenderer。看到这个link。这可能对你有所帮助。

相关问题