⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lwimagebutton.java

📁 it is whiteboard sourse code
💻 JAVA
字号:
package org.merlin.step.nov;import java.awt.*;import java.awt.event.*;public class LWImageButton extends Component {  String name;  Image image;  Dimension size, imSize;  boolean up, down;    public LWImageButton (String n, Image i, Dimension d) {    name = n;    image = i;    size = d;    enableEvents (AWTEvent.MOUSE_EVENT_MASK);    imSize = new Dimension (image.getWidth (this), image.getHeight (this));  }  public Dimension getPreferredSize () {    return getMinimumSize ();  }  public Dimension getMinimumSize () {    return new Dimension (size);  }  public void paint (Graphics g) {    if ((imSize.width == -1) || (imSize.height == -1))      imSize = new Dimension (image.getWidth (this), image.getHeight (this));    int off = !up ? 0 : down ? 1 : -1;    if ((imSize.width != -1) && (imSize.height != -1))      g.drawImage (image, (getSize ().width - imSize.width) / 2 + off, (getSize ().height - imSize.height) / 2 + off, this);    g.setColor (Color.gray);    if (up)      g.draw3DRect (0, 0, getSize ().width - 1, getSize ().height - 1, !down);  }  protected void processMouseEvent (MouseEvent e) {    super.processMouseEvent (e);    if (isEnabled ()) {      if (e.getID () == MouseEvent.MOUSE_ENTERED) {        if (!up) {          up = true;          repaint ();        }      } else if (e.getID () == MouseEvent.MOUSE_EXITED) {        if (up) {          up = false;          repaint ();        }      } else if (e.getID () == MouseEvent.MOUSE_PRESSED) {        if (!down) {          down = true;          repaint ();        }      } else if (e.getID () == MouseEvent.MOUSE_RELEASED) {        if (down) {          down = false;          repaint ();        }        if (up)          fireActionEvent (new ActionEvent (this, ActionEvent.ACTION_PERFORMED, name));      }    }  }    ActionListener listeners;  public synchronized void addActionListener (ActionListener l) {    listeners = AWTEventMulticaster.add (listeners, l);  }  public synchronized void removeActionListener (ActionListener l) {    listeners = AWTEventMulticaster.remove (listeners, l);  }  public synchronized void fireActionEvent (ActionEvent e) {    if (listeners != null)      listeners.actionPerformed (e);  }}

⌨️ 快捷键说明

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