xflatlook.java

来自「java写的浏览器」· Java 代码 · 共 95 行

JAVA
95
字号
/****************************************************************
*              XBrowser  -  eXtended web Browser                *
*                                                               *
*           Copyright (c) 2000-2001  Armond Avanes              *
*     Refer to ReadMe & License files for more information      *
*                                                               *
*                                                               *
*                      By: Armond Avanes                        *
*       Armond555@yahoo.com     &    Armond333@yahoo.com        *
*                http://xbrowser.sourceforge.net/               *
*****************************************************************/
package xbrowser.widgets;

import java.awt.*;
import java.awt.event.*;
import java.awt.image.*;
import java.awt.color.*;
import javax.swing.*;
import javax.swing.border.*;

import xbrowser.*;

public class XFlatLook extends MouseAdapter
{
	static JButton buildFlatLook(JButton btn, int width, int height)
	{
		new XFlatLook(btn, width, height);
		return btn;
	}

	private XFlatLook(JButton btn, int width, int height)
	{
		raisedBorder = XRepository.getComponentBuilder().buildRaisedBorder();
		loweredBorder = XRepository.getComponentBuilder().buildLoweredBorder();
		inactiveBorder = XRepository.getComponentBuilder().buildInactiveBorder();

		btn.setMargin(new Insets(1,1,1,1));

	Dimension size;

	    if( width==-1 || height==-1 )
			size = btn.getPreferredSize();
		else
			size = new Dimension(width,height);

		btn.setMinimumSize(size);
		btn.setMaximumSize(size);
		btn.setPreferredSize(size);

		btn.setBorder(inactiveBorder);
		btn.setFocusPainted(false);

		btn.addMouseListener(this);
	}

	public void mousePressed(MouseEvent e)
	{
	JButton btn = (JButton)e.getSource();

	    if( btn.isEnabled() )
	    {
			btn.setSelected(true);
		    btn.setBorder(loweredBorder);
		}
	}

	public void mouseReleased(MouseEvent e)
	{
	JButton btn = (JButton)e.getSource();

		btn.setSelected(false);
	    btn.setBorder((btn.isEnabled() && btn.contains(e.getX(),e.getY())) ? raisedBorder : inactiveBorder);
	}

	public void mouseEntered(MouseEvent e)
	{
	JButton btn = (JButton)e.getSource();

	    if( btn.isEnabled() )
    		btn.setBorder(btn.isSelected() ? loweredBorder : raisedBorder);
		else
	    	btn.setBorder(inactiveBorder);
	}

	public void mouseExited(MouseEvent e)
	{
	JButton btn = (JButton)e.getSource();

	    btn.setBorder(inactiveBorder);
	}

// Attributes:
	private Border raisedBorder,loweredBorder,inactiveBorder;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?