JAVA网格布局下Jbutton被图标撑大怎么解决 求大神
packagecn.itsource.puzzle;importjava.awt.Dimension;importjava.awt.GridLayout;importja...
package cn.itsource.puzzle;
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.Menu;
import java.awt.MenuBar;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
public class InitFace extends JFrame{
MenuBar mb = new MenuBar();
Menu m = new Menu("开始游戏");
JButton[] jbtn = new JButton[16];
public InitFace() {
// 构造器
setVisible(true);
setBounds(300, 200, 500, 500);
//setResizable(false);
setMenuBar(mb);
mb.add(m);
setLayout(new GridLayout(4,4,5,5));
DrawBox(jbtn);
}
public void DrawBox(JButton[] jbtn){
for (int i = 0; i < jbtn.length; i++) {
jbtn[i] = new JButton();
//jbtn[i].setIcon(new ImageIcon("img/"+i+".jpg"));
add(jbtn[i]);
}
}
}
上面是源码
注释掉添加Jbutton的语句后正常显示
加上后就成这样 需要拉一下才能解决 展开
import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.Menu;
import java.awt.MenuBar;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
public class InitFace extends JFrame{
MenuBar mb = new MenuBar();
Menu m = new Menu("开始游戏");
JButton[] jbtn = new JButton[16];
public InitFace() {
// 构造器
setVisible(true);
setBounds(300, 200, 500, 500);
//setResizable(false);
setMenuBar(mb);
mb.add(m);
setLayout(new GridLayout(4,4,5,5));
DrawBox(jbtn);
}
public void DrawBox(JButton[] jbtn){
for (int i = 0; i < jbtn.length; i++) {
jbtn[i] = new JButton();
//jbtn[i].setIcon(new ImageIcon("img/"+i+".jpg"));
add(jbtn[i]);
}
}
}
上面是源码
注释掉添加Jbutton的语句后正常显示
加上后就成这样 需要拉一下才能解决 展开
展开全部
写的有点乱,这样吧,把JPanel放在JFrame中,布局设为null,不用设置大小。
JPanel pan = new JPanel();
pan.setLayout(null);
JLabel s = new JLabel(i);
s.setBounds(0,0,800,700);
pan.add(s);
JButton tishi1;
tishi1 = new JButton("查询成绩");
tishi1.setBounds(122,55,12,13);
pan.add(tishi1);
frame.setContentPane(pane);
frame.setVisible(true);
追问
我已经找到问题的所在 过早的设置窗体的可见属性 导致控件加载异常 窗体可见属性写在后面就解决了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询