java程序运行出错,求高手看一下

这是一个用下拉式列表控制标签位置的程序,编译可以通过,但无法运行,高手看下哈(程序长了点,监听器就省了哈)
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Exercise15_9 extends JFrame {
private JLabel jlbIcon;
private JLabel[] jlbExplain = new JLabel[2];
private JLabel[] jlbImage = new JLabel[2];
private JLabel[] jlbText = new JLabel[2];
private JComboBox[] jcbImage = new JComboBox[2];
private JComboBox[] jcbText = new JComboBox[2];
private String[] horizontal = {"LEFT", "RIGHT", "CENTER"};
private String[] vertical = {"TOP", "BOTTOM", "CENTER"};

public Exercise15_9() {
JPanel[] jpanel = new JPanel[7];

//设置图像标签
ImageIcon icon = new ImageIcon("image/grapes.gif");
jlbIcon = new JLabel("Grapes", icon, SwingConstants.RIGHT);
jlbIcon.setHorizontalTextPosition(SwingConstants.LEFT);
jlbIcon.setVerticalTextPosition(SwingConstants.TOP);
jlbIcon.setIconTextGap(5);

//创建控制图像,图像标签位置的面板的标签
jlbExplain[0] = new JLabel("Horizontal Alignment");
jlbExplain[1] = new JLabel("Text Position");

//创建控制图像位置的面板
jlbImage[0] = new JLabel("Horizontal");
jlbImage[1] = new JLabel("Vertical");
jcbImage[0] = new JComboBox(horizontal);
jcbImage[1] = new JComboBox(vertical);
jpanel[0].setLayout(new GridLayout(2, 1));
jpanel[0].add(jlbImage[0]);
jpanel[0].add(jlbImage[1]);
jpanel[1].setLayout(new GridLayout(2, 1));
jpanel[1].add(jcbImage[0]);
jpanel[1].add(jcbImage[1]);
jpanel[2].setLayout(new GridLayout(1, 2));
jpanel[2].add(jpanel[0]);
jpanel[2].add(jpanel[1]);

//创建控制图像标签位置的面板
jlbText[0] = new JLabel("Horizontal");
jlbText[1] = new JLabel("Vertical");
jcbText[0] = new JComboBox(horizontal);
jcbText[1] = new JComboBox(vertical);
jpanel[3].setLayout(new GridLayout(2, 1));
jpanel[3].add(jlbText[0]);
jpanel[3].add(jlbText[1]);
jpanel[4].setLayout(new GridLayout(2, 1));
jpanel[4].add(jcbText[0]);
jpanel[4].add(jcbText[1]);
jpanel[5].setLayout(new GridLayout(1, 2));
jpanel[5].add(jpanel[3]);
jpanel[5].add(jpanel[4]);

//将控制面板及其标签加在一个面板上
jpanel[6].setLayout(new GridLayout(2, 2));
jpanel[6].add(jlbExplain[1]);
jpanel[6].add(jlbExplain[1]);
jpanel[6].add(jpanel[2]);
jpanel[6].add(jpanel[5]);

//将上面图像标签和控制面板加在一个容器上
setLayout(new GridLayout(2, 1));
add(jlbIcon);
add(jpanel[6]);
}

public static void main(String[] args) {
Exercise15_9 frame = new Exercise15_9();
frame.setTitle("Exercise15_9");
frame.setLocationRelativeTo(null);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(500, 400);
frame.setVisible(true);
}
}

出现这种情况,一般是程序文件丢失,但看来你说出的这两个文件不是系统文件,可以是病毒或其它应用程序,在用杀毒软件杀毒后,有时会出现这种现像,主要是杀毒软件删除了病毒程序,但它的注册表项还存在,导致开机时显示加载出错,或找不到模块,重装系统也可以,或者在开始运行中输入msconfig-启动-找到这两项,把前面的勾去掉就可以了,也可以试一下系统还原。也可以在开始运行中输入regedit打开注册表编辑器,按ctrl+F查找kkjioi49和 iinwiwxn删除其所有键值即可。
这个动态链接数据库应该是在注册表中注册了,但是已经被你有意无意的删除了!(比如杀毒软件干掉病毒后,通常不会修复被病毒所修改的注册表,可以说这是病毒后遗症),可能是病毒、驱动或者是程序,反正就是不正确的删除了文件所造成的!
解决方法:
在运行对话框里输入regedit点击查找
在查找对话框中输入kb89415 .LOG,
最后就是找出一个关于kb89415 .LOG的键或值都统统删除!!
在这之前最好备份一下注册表,以防不测!!
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-02-09
相似回答