2014-10-04 56 views
0
import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 

class BLayout 
{ 
JFrame f; 
JButton b[]; 
BLayout(String s) 
{ 
f=new JFrame(s); 
b=new JButton[5]; 
String b1[]={"NORTH","South","Center","East","WEst"}; 
String x[]= 

{BorderLayout.NORTH,BorderLayout.SOUTH,BorderLayout.CENTER,BorderLayout.EAST,BorderLayout.WEST}; 
for(int i=0;i<b1.length();i++){ 
b[i]=new JButton(b1[i]); 
f.add(b[i],x[i]); 
} 
    f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    f.setSize(400,400); 
    f.setVisible(true); 
    } 
    public static void main(String... s) 
    { 
    new BLayout("Border LAyout"); 
    } 
    } 

错误显示'未找到变量'。边框布局程序未按预期方式完成

我该怎么办?

为什么b1.length不认为是5,当我给5的时候没有错误。

+2

您是否可以修复您的格式,以便我们可以读取它并发布错误消息的连贯描述(例如何时发生以及发生了什么)? – khelwood 2014-10-04 16:00:45

回答

1
for(int i=0;i<b1.length();i++) 

使用数组时,长度不是数组的方法。这是一个变量。

您应该使用:

for(int i = 0; i < b1.length; i++) 

也不要害怕编码使代码更易读时使用“空白”。