package PbuliClass; import java.awt.Dimension; import java.awt.Point; import javax.swing.JFrame; import javax.swing.Timer; import java.awt.event.ActionListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; import java.awt.event.ActionEvent; /**¸ÃÀàÓÃÓÚʵÏÖÓÒϽǵĵ¯´°ÌáÐѹ¦ÄÜ*/ public class PopTiP extends JFrame { /** * */ private static final long serialVersionUID = 1L; private PopWindow window; private Timer timer; private Point location; private Dimension screenSize; private Dimension windowSize; static boolean poptip=true; public PopTiP(String text) { window = new PopWindow(text); window.addMouseListener(new MouseListener() { public void mouseReleased(MouseEvent e) { } @Override public void mousePressed(MouseEvent e) { // TODO ×Ô¶¯Éú³ÉµÄ·½·¨´æ¸ù poptip=true; } @Override public void mouseExited(MouseEvent e) { // TODO ×Ô¶¯Éú³ÉµÄ·½·¨´æ¸ù } @Override public void mouseEntered(MouseEvent e) { // TODO ×Ô¶¯Éú³ÉµÄ·½·¨´æ¸ù } @Override public void mouseClicked(MouseEvent e) { // TODO ×Ô¶¯Éú³ÉµÄ·½·¨´æ¸ù } }); // ´´½¨Timer¿Ø¼þ timer = new Timer(1, new ActionListener() { public void actionPerformed(ActionEvent e) { location.y -= 1;// ÌáÉýÐÅÏ¢´°Ìå´¹Ö±×ø±ê // ÔÚÐÅÏ¢´°ÌåÏÔʾ¶øÇÒûÓдﵽÉÏÉýλÖÃ֮ǰ³ÖÐøÒÆ¶¯´°Ìå if (window.isShowing()&& location.y > screenSize.height - windowSize.height) window.setLocation(location); else {// ´°ÌåδÏÔʾ»ò³¬³öÒÆ¶¯·¶Î§Í£Ö¹ Timer source = (Timer) e.getSource(); source.stop(); } } }); screenSize = getToolkit().getScreenSize();// »ñÈ¡ÆÁÄ»´óС window.setVisible(true);// ÏÔʾÐÅÏ¢´°Ìå window.setAlwaysOnTop(true);// °ÑÐÅÏ¢´°ÌåÖö¥ windowSize = window.getSize();// »ñÈ¡ÐÅÏ¢´°Ìå´óС location = new Point();// ´´½¨Î»ÖöÔÏó location.x = screenSize.width - windowSize.width-50;// ³õʼ»¯´°ÌåλÖà location.y = screenSize.height-50; timer.start();// Æô¶¯Timer¿Ø¼þ } public static boolean isPoptip() { return poptip; } public static void setPoptip(boolean poptip) { PopTiP.poptip = poptip; } }