更具体一点: 我已经构建了一个简单的多线程TCPServer(Java),它与客户端(C#/ mono)进行通信。根据要求,客户端会截取屏幕截图并将其发送到服务器。 然后屏幕截图显示在JTable中。我想在表格中为这些图像添加工具提示,使用相同的图像但是另一个尺寸。 代码目前看起来像这样:
screenLabel.setToolTipText("<html><img src=\"" + (new ImageIcon(image)) + "\"></img> Tooltip</html>");
当然,这不起作用,因为src属性需要一个路径。
问题是,我不知道如何规避这种行为
因此,我的问题是:
1)如何检索临时资源的有效路径(不保存文件系统中的资源)
OR
2)如何提供一个自定义的JTooltip,它可以轻松地显示Images / ImageIcons
答案 0 :(得分: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设置为 不可能,瞧你有多线工具提示!同样你可以显示 你想要的任何自定义组件! “
答案 1 :(得分:0)