在不知道图像路径的情况下将图像添加到 JTooltip(由于图像是临时资源)

发布于 2024-08-09 12:58:31 字数 454 浏览 6 评论 0原文

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

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

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

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

To be a little more specific:
I've built a simple multithreaded TCPServer (Java) which communicates with clients (C# / mono). On request the Clients take a screenshot and send it to the Server.
The screenshots are then displayed in a JTable. I'd like to add a tooltip to these images in the table with the same image but in another size.
The code currently looks like this:

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

Of course, this won't work, as the src attribute requires a path.
The problem is, I don't know how to circumvent this behaviour.
My question would hence either be:
1) How to retrieve a valid path for a temporary resource (without saving the resource in the file-system)
OR
2) How to provide a custom JTooltip which easily allows Images/ImageIcons to be displayed

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

巷子口的你 2024-08-16 12:58:31

除了标准 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 设置为
不可编辑,瞧,你有一个多行工具提示!同样你可以显示
任何您想要的自定义组件! ”

It is possible to add a new protocol besides the standard ftp/http/etc to the URL resolving which then maps into your own code instead of over the network.

There is three approaches listed at http://www.unicon.net/node/776, which may help you getting started. I was thinking of extending URLStreamHandler and registering it with the JVM.

Regarding changing JToolTip, from http://www.manning-sandbox.com/message.jspa?messageID=9915

"Remember JToolTip is a container, so ,
subclass JToolTip to have a JTextArea/Pane fill it . Set the JTA/JTP as
uneditable and voila you have a multiline tooltip! Similarly you can display
any custom component you want! "

二智少女猫性小仙女 2024-08-16 12:58:31

对于选项 2,您需要:

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

帖子提供了一个简单的工作示例。

For option 2 you need to:

a) create a custom tooltip
b) override the table to use the tooltip.

This posting provides a simple working example.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文