2

更具体一点:我构建了一个简单的多线程 TCPServer (Java),它与客户端 (C#/mono) 通信。根据要求,客户端截取屏幕截图并将其发送到服务器。然后将屏幕截图显示在 JTable 中。我想为表格中的这些图像添加一个工具提示,使用相同的图像但大小不同。目前的代码如下所示:

screenLabel.setToolTipText("<html><img src=\"" + (new ImageIcon(image)) + "\"></img> Tooltip</html>");

当然,这是行不通的,因为 src 属性需要路径。问题是,我不知道如何规避这种行为。
因此,我的问题是:
1)如何检索临时资源的有效路径(不将资源保存在文件系统中)

2)如何提供自定义 JTooltip 以轻松显示图像/图像图标

4

2 回答 2

2

除了标准的 ftp/http/etc 之外,还可以将新协议添加到 URL 解析中,然后映射到您自己的代码中,而不是通过网络。

http://www.unicon.net/node/776列出了三种方法,可以帮助您入门。我正在考虑扩展 URLStreamHandler 并将其注册到 JVM。

关于更改 JToolTip,来自http://www.manning-sandbox.com/message.jspa?messageID=9915

“记住 JToolTip 是一个容器,所以,子类 JToolTip 有一个 JTextArea/Pane 填充它。将 JTA/JTP 设置为不可编辑,瞧,你有一个多行工具提示!同样,你可以显示任何你想要的自定义组件!“

于 2009-11-01T21:30:00.247 回答
0

对于选项 2,您需要:

a) 创建自定义工具提示
b) 覆盖表格以使用工具提示。

这篇文章提供了一个简单的工作示例。

于 2009-11-01T22:13:39.583 回答