Java高手请帮我看一下这个程序哪里有错???

王朝知道·作者佚名  2009-08-19
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 程序設計 >> 其他編程語言
 
問題描述:

编译时有一个错误,但我找不到....请帮我看一下.....最好自己也编译一下.....先谢了....

//UseJLabel.java

import java.awt.*;

import javax.swing.*;

import java.awt.event.*;

public class UseJLabel extends JFrame{

private int n=0;

private CardLayout cl=new CardLayout();

private JLabel cardLabel;

private Icon[] icons=new ImageIcon[12];

private JButton b1=new JButton("第一张");

private JButton b2=new JButton("下一张");

private JButton b3=new JButton("上一张");

private JButton b4=new JButton("最后一张");

public UseJLabel()

{

setLayout(new BorderLayout());

for(int i=0;i<12;i++)

icons[i]=new ImageIcon("images/T"+i+".gif");

cardLabel=new JLabel(icon[0]);

add (cardLabel,BordLayout.CENTER);

JPanel jp=new JPanel();

jp.setLayout(new FlowLayout());

jp.add(b1);

jp.add(b2);

jp.add(b3);

jp.add(b4);

b3.setEnabled(false);

add(jp,BordLayout.SOUTH);

b1.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

n=0;

cardLabel.setIcon(icon[n]);

b2.setEnabled(true);

b3.setEnabled(false);

}

});

b2.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

cardLabel.setIcon(icon[++n]);

if(n==1) b3.setEnabled(true);

if(n==icon.length-1) b2.setEnabled(false);

}

});

b3.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

cardLabel.setIcon(icon[--n]);

if(n==icon.length-2) b2.setEnabled(true);

if(n==0) b3.setEnabled(false);

}

});

b4.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

n=icon.length-1;

cardLabel.setIcon(icon[n]);

b2.setEnabled(false);

b3.setEnabled(true);

}

});

}

public static void main(Sring[] args){

UseJLabel frame=new UseJLabel();

frame.setTitle("测试JLabel");

frame.setSize(400,300);

frame.setVisible(true);

frmae.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

參考答案:

import java.awt.*;

import javax.swing.*;

import java.awt.event.*;

public class UseJLabel extends JFrame{

private int n=0;

private CardLayout cl=new CardLayout();

private JLabel cardLabel;

private Icon[] icons=new ImageIcon[12];

private JButton b1=new JButton("第一张");

private JButton b2=new JButton("下一张");

private JButton b3=new JButton("上一张");

private JButton b4=new JButton("最后一张");

public UseJLabel()

{

setLayout(new BorderLayout());

for(int i=0;i<12;i++)

icons[i]=new ImageIcon("images/T"+i+".gif");

cardLabel=new JLabel(icons[0]);

add (cardLabel);

JPanel jp=new JPanel();

jp.setLayout(new FlowLayout());

jp.add(b1);

jp.add(b2);

jp.add(b3);

jp.add(b4);

b3.setEnabled(false);

add(jp,BorderLayout.SOUTH);

b1.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

n=0;

cardLabel.setIcon(icons[n]);

b2.setEnabled(true);

b3.setEnabled(false);

}

});

b2.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

cardLabel.setIcon(icons[++n]);

if(n==1) b3.setEnabled(true);

if(n==icons.length-1) b2.setEnabled(false);

}

});

b3.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

cardLabel.setIcon(icons[--n]);

if(n==icons.length-2) b2.setEnabled(true);

if(n==0) b3.setEnabled(false);

}

});

b4.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e){

n=icons.length-1;

cardLabel.setIcon(icons[n]);

b2.setEnabled(false);

b3.setEnabled(true);

}

});

}

public static void main(String[] args){

UseJLabel frame=new UseJLabel();

frame.setTitle("测试JLabel");

frame.setSize(400,300);

frame.setVisible(true);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

}

调好了,竟然报了20多处错误

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航