我把JButton经过继承之后变成GameButton
把GameButton加到JPanel上之后
运行不能直接显示出来,我把鼠标放到GameButton的位置上就显示出来了
这是为什么?
怎样才能直接显示出来呢?
把GameButton加到JPanel上之后
运行不能直接显示出来,我把鼠标放到GameButton的位置上就显示出来了
这是为什么?
怎样才能直接显示出来呢?
解决方案 »
- java的jtree点击节点,如何将子节点全部输出来
- org.apache.commons.net.ftp.FTPClient获取Solaris系统FTP文件列表问题
- 十万火急,请大家过来帮我看看着个程序吧?
- 关于String!
- 使用jasperreport时出现错误:java.awt.HeadlessException,哪位高手有相关的经验啊!
- 初学者,很简单的问题,下面这一句做何解释?
- 快看阿!
- java中如何解析这个xml??
- 怎么把int[]变成byte[],然后再变回来?(在线等)!!
- 用什么方法写java顺手些,有人不教育我用vj,jbulider
- 大家好,我是JAVA的初学者,以前用ASP,对XML没多少概念,能否推荐点学习XML的资料。
- 菜鸟劳驾大虾一举手之功--经典的数三退一问题源程
import javax.swing.*;
import java.awt.GridLayout;
public class GameButton extends JButton {
private int X;
privateint Y;
private int value;
private boolean selected;
private static GameButton[][] gbGroup = new GameButton[3][3] ; public GameButton(){
super();
}public GameButton(String s){
super(s);
}
public void setX(int x){X=x;}
public void setY(int y){Y=y;}
public void setValue(int V){value=V;}
public int getX(){return X;}
public int getY(){return Y;}
public int getValue(){return value;}
public void erase(){setValue(0);}
public static void main(String[] args) {
JFrame mFrame=new JFrame("lianPanel");
mFrame.setSize(600,400);
mFrame.setLocation(100,100);
JPanel panel=new JPanel(new GridLayout(3,3)); for(int a=0;a<3;a++){
for(int b=0;b<3;b++){
gbGroup[a][b]=new GameButton(a+b+"");
}
}for(int i=0;i<3;i++){
for(int j=0;j<3;j++)
panel.add(gbGroup[i][j]);
}
mFrame.add(panel,"Center");
mFrame.setVisible(true);
}
}
这个类修改后还剩下
import javax.swing.JButton;
import java.awt.GridLayout;
public class GameButton extends JButton {
private int value;
public GameButton(){
super();
}
public void setValue(int V) {value=V; }
public int getValue() {return value;}
public void erase() {setValue(0);}
public static void main(String[] args){}}
然后就好了
我也不知道为什么X,Y去掉之后就好了,反正就是好了
public void setBounds(int x,int y,int w,int h){
X=x;
Y=y;
super.setBounds(0,0,w,h);
}
应该这样:
Frame f;
Button b;
Container contentPane=f.getContentPane();
contentPane.add(b);
这是swing得版面得问题..