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

📄 cell.java

📁 java多媒体技术 7.1 播放声音文件 7.2 收音机 7.3 电子琴 7.4 吃豆游戏 7.5 简易壁球 7.6 弹球游戏 7.7 拯救生命 7.8 扫雷 7.9 双向飞碟 7
💻 JAVA
字号:
/*
   该类实现cell对象.
   它的行为与标准按钮类似,用户可以为其设置图片,
   在运行过程中改变图片以及将其设置为无效状态等
*/ 
import java.awt.*;

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

   public cell(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; }
   public synchronized Dimension minimumSize() { return minSize; }
   public void disableCell() { enabled=false; disable(); }
   public void setImage(Image img){
       this.image=img;
       repaint();
   }
   // 鼠标事件模拟单击按钮事件 
   public boolean mouseDown(Event evt,int x,int y){
      if (evt.modifiers!=Event.META_MASK) {   
         buttonstatus=DOWN;   
         repaint();
         return false;
      } 
      return false;
   }

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

   public void paint (Graphics g) {
      if (enabled) {
       if (buttonstatus==UP) {    
          g.drawRect(0,0,size().width-1,size().height-1);
          g.setColor(getBackground());
          g.draw3DRect(0,0,size().width-2,size().height-2,true);
       } else {
         g.drawRect(0,0,size().width-1,size().height-1);
         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);   
      } else {  /* not enabled  */
         g.setColor(Color.gray);
         g.drawRect(0,0,size().width-1,size().height-1);
         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 + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -