这是个APPLET程序使用布局器时,用数组添加到PANEL中,但程序无法初始化问题代码已经注明import java.awt.*;
import javax.swing.*;
public class layout extends JApplet
{
GridLayout g1;
GridBagLayout gb1;
BoxLayout b1;
GridBagConstraints gbc;
JPanel calPane,logPane;
JPanel mainPane;////这里,定义一个BUTTON数组 JButton btn[16];
public void init()
{
g1 = new GridLayout(8,2);
calPane = new JPanel();
calPane.setLayout(g1);
/////////////////这里开始初始化,加了BUTTON这些代码后就无法初始化了
btn = new JButton[16];
for(int i = 0; i<=15;i++)
calPane.add(btn[i]);
/////////////////////////////////////////
calPane.add(btn1);
calPane.add(btn2);
gb1 = new GridBagLayout();
gbc = new GridBagConstraints();
logPane = new JPanel();
logPane.setLayout(gb1); mainPane = new JPanel();
b1 = new BoxLayout(mainPane,BoxLayout.X_AXIS);
b1.addLayoutComponent("Calculator",calPane);
b1.addLayoutComponent("Text",logPane);
getContentPane().add(mainPane);
mainPane.add(calPane);
mainPane.add(logPane);
}
}再问一下,如何设置JPANEL的大小,以及控件里的大小?
貌似在JAPPLET中用setBounds行不通.
JFRAME好象也不可以..
import javax.swing.*;
public class layout extends JApplet
{
GridLayout g1;
GridBagLayout gb1;
BoxLayout b1;
GridBagConstraints gbc;
JPanel calPane,logPane;
JPanel mainPane;////这里,定义一个BUTTON数组 JButton btn[16];
public void init()
{
g1 = new GridLayout(8,2);
calPane = new JPanel();
calPane.setLayout(g1);
/////////////////这里开始初始化,加了BUTTON这些代码后就无法初始化了
btn = new JButton[16];
for(int i = 0; i<=15;i++)
calPane.add(btn[i]);
/////////////////////////////////////////
calPane.add(btn1);
calPane.add(btn2);
gb1 = new GridBagLayout();
gbc = new GridBagConstraints();
logPane = new JPanel();
logPane.setLayout(gb1); mainPane = new JPanel();
b1 = new BoxLayout(mainPane,BoxLayout.X_AXIS);
b1.addLayoutComponent("Calculator",calPane);
b1.addLayoutComponent("Text",logPane);
getContentPane().add(mainPane);
mainPane.add(calPane);
mainPane.add(logPane);
}
}再问一下,如何设置JPANEL的大小,以及控件里的大小?
貌似在JAPPLET中用setBounds行不通.
JFRAME好象也不可以..
解决方案 »
- 代码编译出错,求助!
- 怎么能用JSP页面想数据库里面提交信息啊!
- 请教怎么解决这个问题jmagick.dll: Can't find dependent libraries
- 去除sun的checkstyle的警告
- 书的代码。 关于数据库的(sql)的 不能运行 ,提示 类找不到!SQL异常! 什么原因呢
- 关于怎样传递事件
- 帮忙解释一下代码的意思和用途
- 有谁知道J Builder 8 Enterprise 注册码!高分想赠!
- 在application中使用canvas
- response.sendRedirect("../update/测试.doc")正确么?
- 关于I/O的一个问题,有会的请指教,谢谢
- 自定义加载器如何加载JAR包
calPane.add(btn[i]);for(int i = 0; i<=15;i++) { // 应该这样
btn[i] = new JButton("Button_" + (i + 1));
calPane.add(btn[i]);
}calPane.add(btn1); // 应该是 calPane.add(btn[0]);
calPane.add(btn2); // 应该是 calPane.add(btn[1]);
再问一个
btn = new JButton[16];用这一句不可以构造16个吗?那怎样布局?例如确定这16个孔件大小一样,但可调的而且PANEL大小可以在程序设置?
JButton btn1,btn2,btn3,btn4,.....btn16;
所以你还是需要初始化这16个按钮:
for(int i = 0; i < btn.length; i++){
btn[i] = new JButton("Button" + (i + 1));
}
calPane = new JPanel(new GridLayout(4, 4)); // 用GridLayout布局,替换这句就可以了