Adición de una imagen a una JTooltip sin conocer el camino de la imagen (debido a la imagen de ser un ressource temporal)

StackOverflow https://stackoverflow.com/questions/1658318

Pregunta

Para ser un poco más específico: He construido un simple TCPServer multiproceso (Java) que se comunica con los clientes (C # / mono). En la solicitud de los clientes a tomar una captura de pantalla y la envían al servidor. Las capturas de pantalla se muestran entonces en un JTable. Me gustaría añadir un texto de ayuda a estas imágenes en la mesa con la misma imagen, pero en otro tamaño. El código actualmente se ve así:

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

Por supuesto, esto no va a funcionar, como el atributo src requiere una ruta. El problema es que no sé cómo eludir este comportamiento.
Mi pregunta sería, por tanto, ser:
1) Como recuperar un camino válido para un recurso temporal (sin guardar el recurso en el sistema de archivos)
O
2) ¿Cómo proporcionar una costumbre JTooltip que permite fácilmente imágenes / ImageIcons que se mostrarán

¿Fue útil?

Solución

Es posible añadir un nuevo protocolo FTP, además de la norma / http / etc para resolver la dirección URL que luego se mapea en su propio código en lugar de por la red.

Hay tres enfoques mencionados en http://www.unicon.net/node/776, que puede ayudarle a ponerse en marcha. Estaba pensando en extender URLStreamHandler y registrarlo con la JVM.

En cuanto a cambiar JToolTip, desde http: //www.manning-sandbox. com / message.jspa? messageID = 9915

"Recuerde JToolTip es un contenedor, por lo que, JToolTip subclase de tener un JTextArea / Panel de llenarlo. Ajuste el JTA / JTP como no editable y listo usted tiene una sugerencia de varias líneas! Del mismo modo se pueden visualizar cualquier componente personalizado que desea! "

Otros consejos

Para la opción 2 es necesario:

a) crear herramientas personalizadas
b) anular la tabla para utilizar la información de herramientas.

publicar proporciona un sencillo ejemplo de trabajo.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top