JLabel 的一个小问题

loulanhaojie 2010-03-15 08:10:05
package jrc;
import java.awt.*;
import javax.swing.*;
public class JavaInfo extends JFrame{
JPanel panel;
GridBagLayout gbl;
GridBagConstraints gbc;
JLabel lblArray[];
JTextField txtArray[];
String sPop[] = {
"path.separator",
"file.separator",
"file.encoding",
"java.vm.version",
"java.class.version",
"os.arch",
"sun.cpu.isalist",
"os.name",
"os.version",
"user.name",
"user.home",
"user.dir",
"java.class.path"
};
String sLbl[] = {
"路径分隔符",
"文件分隔符",
"文件编码格式",
"虚拟机版本",
"操作系统架构",
"CPU相关信息",
"操作系统名称",
"操作系统版本",
"登陆用户名称",
"登陆用户目录",
"系统当前目录",
"类搜索路径"
};
public JavaInfo(){
super("使用标签,文本框数组及网格袋布局来创建界面");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel = new JPanel();
gbl = new GridBagLayout();
gbc = new GridBagConstraints();
gbc.anchor = GridBagConstraints.NORTHWEST;
gbc.fill = GridBagConstraints.NONE;
panel.setLayout(gbl);
lblArray = new JLabel[13];
txtArray = new JTextField[13];
for(int i = 0;i < 13;i++){
//lblArray[i] = new JLabel(sLbl[i]);这句话调试的时候有问题,不解
addControls(i+1,1,lblArray[i]);
txtArray[i] = new JTextField(System.getProperty(sPop[i]),40);
addControls(i+1,2,txtArray[i]);
}
getContentPane().add(panel);
pack();
setVisible(true);
}
public void addControls(int iRow,int iCol,Component c){
gbc.gridy = iRow;
gbc.gridx = iCol;
gbl.setConstraints(c,gbc);
panel.add(c);
}
public static void main(String[] args){
JavaInfo s = new JavaInfo();
}
}

有注释的哪一行不懂
那位能解释下,谢谢!!!
...全文
59 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
loulanhaojie 2010-03-15
  • 打赏
  • 举报
回复
这是书上的代码~~
py330316117 2010-03-15
  • 打赏
  • 举报
回复
说实话没有你这么用jlabel的,你还是再好好 看看这个地方的内容吧,你的问题大了
loulanhaojie 2010-03-15
  • 打赏
  • 举报
回复
不能对JLabel中的非静态方法setText()进行静态的引用
huanjing51 2010-03-15
  • 打赏
  • 举报
回复
lblArray[i] = new JLabel();
JLabel.setText(sLbl[i]);

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧