📄 cell.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 + -