Here you can find the source of showToolTip(final boolean show, final JWindow tip, final JButton boton, final JLabel tipText)
Parameter | Description |
---|---|
show | Boolean que indica si se muestra el tooltip |
tip | JWindow que muestra el contenido del tooltip |
boton | JButton al que se relaciona el tooltip |
tipText | JLabel que muestra el contenido del tooltip |
static void showToolTip(final boolean show, final JWindow tip, final JButton boton, final JLabel tipText)
//package com.java2s; /*/*from w w w.jav a 2 s .com*/ * Controlador Java de la Secretaria de Estado de Administraciones Publicas * para el DNI electronico. * * El Controlador Java para el DNI electronico es un proveedor de seguridad de JCA/JCE * que permite el acceso y uso del DNI electronico en aplicaciones Java de terceros * para la realizacion de procesos de autenticacion, firma electronica y validacion * de firma. Para ello, se implementan las funcionalidades KeyStore y Signature para * el acceso a los certificados y claves del DNI electronico, asi como la realizacion * de operaciones criptograficas de firma con el DNI electronico. El Controlador ha * sido disenado para su funcionamiento independiente del sistema operativo final. * * Copyright (C) 2012 Direccion General de Modernizacion Administrativa, Procedimientos * e Impulso de la Administracion Electronica * * Este programa es software libre y utiliza un licenciamiento dual (LGPL 2.1+ * o EUPL 1.1+), lo cual significa que los usuarios podran elegir bajo cual de las * licencias desean utilizar el codigo fuente. Su eleccion debera reflejarse * en las aplicaciones que integren o distribuyan el Controlador, ya que determinara * su compatibilidad con otros componentes. * * El Controlador puede ser redistribuido y/o modificado bajo los terminos de la * Lesser GNU General Public License publicada por la Free Software Foundation, * tanto en la version 2.1 de la Licencia, o en una version posterior. * * El Controlador puede ser redistribuido y/o modificado bajo los terminos de la * European Union Public License publicada por la Comision Europea, * tanto en la version 1.1 de la Licencia, o en una version posterior. * * Deberia recibir una copia de la GNU Lesser General Public License, si aplica, junto * con este programa. Si no, consultelo en <http://www.gnu.org/licenses/>. * * Deberia recibir una copia de la European Union Public License, si aplica, junto * con este programa. Si no, consultelo en <http://joinup.ec.europa.eu/software/page/eupl>. * * Este programa es distribuido con la esperanza de que sea util, pero * SIN NINGUNA GARANTIA; incluso sin la garantia implicita de comercializacion * o idoneidad para un proposito particular. */ import java.awt.Color; import java.awt.Font; import java.awt.IllegalComponentStateException; import java.awt.Point; import java.util.logging.Logger; import javax.swing.BorderFactory; import javax.swing.JButton; import javax.swing.JLabel; import javax.swing.JWindow; import javax.swing.UIManager; public class Main { /** Muestra u oculta un tooltip relacionado con un botón. * @param show Boolean que indica si se muestra el tooltip * @param tip JWindow que muestra el contenido del tooltip * @param boton JButton al que se relaciona el tooltip * @param tipText JLabel que muestra el contenido del tooltip */ static void showToolTip(final boolean show, final JWindow tip, final JButton boton, final JLabel tipText) { tipText.setText(boton.getToolTipText()); tip.setBackground((Color) UIManager.get("ToolTip.background")); //$NON-NLS-1$ tipText.setBackground((Color) UIManager.get("ToolTip.background")); //$NON-NLS-1$ tipText.setBorder(BorderFactory.createCompoundBorder(BorderFactory.createLineBorder(Color.BLACK), BorderFactory.createEmptyBorder(0, 3, 0, 3))); tipText.setFont((Font) UIManager.get("ToolTip.font")); //$NON-NLS-1$ tipText.setOpaque(true); tip.add(tipText); Point p = new Point(); try { p = boton.getLocationOnScreen(); } catch (final IllegalComponentStateException e) { Logger.getLogger("es.gob.jmulticard").warning("Error mostrando el tooltip: " + e); //$NON-NLS-1$ //$NON-NLS-2$ } int factor = 0; if (boton.getSize().getHeight() > 34) { factor = (int) (boton.getSize().getHeight() * 0.5); } tip.setLocation((int) p.getX(), (int) p.getY() + 30 + factor); tip.pack(); tip.setVisible(show); } }