custombutton.java

来自「在windows下玩的扫雷用java编写」· Java 代码 · 共 53 行

JAVA
53
字号
/*
    该类实现一个包含图片的简单按钮(在运行状态下,用户可以改变它的图片) 
*/
import java.awt.*;

class custombutton extends Canvas {
   Container pappy;
   Image image; 
   Dimension minSize;
   int w, h;
   int DOWN=1,UP=0;
   int buttonstatus=UP;  

   public custombutton(Image image, Container parent, int initialWidth, int initialHeight) {
       this.image = image;
       pappy = parent;
       w = initialWidth;
       h = initialHeight;
       minSize = new Dimension(w,h);
   }

   public Dimension preferredSize() { return minSize; /* minimumSize();*/ }

   public synchronized Dimension minimumSize() { return minSize; }
   
   public void setImage(Image img){
       this.image=img;
       repaint();
   }

   public boolean mouseDown(Event evt,int x,int y){
      buttonstatus=DOWN;   
      repaint();
      return true;
   }

   public boolean mouseUp(Event evt,int x,int y){
      buttonstatus=UP;
      repaint();
      return false;
   }

   public void paint (Graphics g) {
       if (buttonstatus==UP) {    
          g.setColor(getBackground());
          g.draw3DRect(0,0,size().width-2,size().height-2,true);
       } else {
         g.setColor(getBackground());
         g.fillRect(1,1,size().width,size().height);
       }
       if (image!=null) g.drawImage(image, (size().width-image.getWidth(this))/2, (size().height-image.getHeight(this))/2, this);   
   }
}  

⌨️ 快捷键说明

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