我一直收到错误:

Exception in thread "main" java.lang.IllegalArgumentException: adding a window to a container

at java.awt.Container.checkNotAWindow(Container.java:483)

at java.awt.Container.addImpl(Container.java:1084)

at java.awt.Container.add(Container.java:966)

at Lab2.EmployeeGUI.main(EmployeeGUI.java:28)

有人可以帮助我,告诉我我做错了什么吗?

我是初学程序员.

package Lab2;

import java.awt.*;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.*;

/**

*

* @author Jim Doyle

*/

public class EmployeeGUI extends JFrame implements ActionListener {

JTextField fName, mName, lName, phone, sal, years;

JComboBox boxTitle, boxDept;

DefaultListModel lstdefault;

JList project;

DbWork dbw = new DbWork("Lab2");

DbWork Title = new DbWork("Lab2");

DbWork Dept = new DbWork("Lab2");

DbWork Prjs = new DbWork("Lab2");

DbWork PrjList = new DbWork("Lab2");

public static void main(String[] args) {

EmployeeGUI app = new EmployeeGUI();

JFrame frame = new JFrame("Employee Interface by Jim Doyle");

frame.getContentPane().add(app, BorderLayout.CENTER);

frame.setSize(300, 300);

frame.setVisible(true);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public EmployeeGUI() {

JPanel labels = new JPanel();

labels.setLayout(new GridLayout(8,1));

labels.add(new JLabel("First Name"));

labels.add(new JLabel("MI"));

labels.add(new JLabel("Last Name"));

labels.add(new JLabel("Title"));

labels.add(new JLabel("Telephone"));

labels.add(new JLabel("Salary"));

labels.add(new JLabel("Department"));

labels.add(new JLabel("Years in Service"));

getContentPane().add(labels, BorderLayout.WEST);

JPanel fields = new JPanel();

fields.setLayout(new GridLayout(8,1));

fName = new JTextField(15);

mName = new JTextField(15);

lName = new JTextField(15);

phone = new JTextField(15);

sal = new JTextField(15);

years = new JTextField(15);

boxTitle = new JComboBox();

boxDept = new JComboBox();

fields.add(fName);

fields.add(mName);

fields.add(lName);

fields.add(boxTitle);

fields.add(phone);

fields.add(sal);

fields.add(years);

getContentPane().add(fields, BorderLayout.CENTER);

JPanel prjinfo = new JPanel();

prjinfo.setLayout(new GridLayout(1,2));

prjinfo.add(new JLabel("Project Description"));

project = new JList();

lstdefault = new DefaultListModel();

// add items to title combo box

while(Title.nextRecord()) {

String txtTit = Title.getField(1);

if(txtTit!=null) {

boxTitle.addItem(Title.getField(1));

}

}

// add items to department combo box

while(Dept.nextRecord()) {

String txtDept = Dept.getField(2);

if(txtDept!=null) {

boxDept.addItem(Dept.getField(2));

}

}

while(PrjList.nextRecord()) {

lstdefault.addElement(PrjList.getField(1));

}

project = new JList(lstdefault);

project.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);

prjinfo.add(project);

getContentPane().add(prjinfo, BorderLayout.SOUTH);

}

public void actionPerformed(ActionEvent e) {

String button = e.getActionCommand();

if(button == "First") {

if(dbw.firstRecord()) {

Execute();

}

}

else if(button == "Next") {

if(dbw.nextRecord()) {

Execute();

}

}

else if(button == "Save") {

String sql = "UPDATE FirstName, MiddleName, LastName, WorkPhone, Salary, YearsInService FROM Employee;";

dbw.processQuery(sql);

}

}

private void action() {

boxTitle.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

JComboBox b = (JComboBox)e.getSource();

String ntitle = (String)b.getSelectedItem();

updateTitle(ntitle);

}

});

}

private void Execute() {

fName.setText(dbw.getField(1));

mName.setText(dbw.getField(2));

lName.setText(dbw.getField(3));

phone.setText(dbw.getField(5));

sal.setText(dbw.getField(6));

years.setText(dbw.getField(8));

String ftext = dbw.getField(4);

int dx = TitleList(ftext);

boxTitle.setSelectedIndex(dx);

String dtext = dbw.getField(7);

int dx2 = DeptList(dtext);

boxDept.setSelectedIndex(dx2);

action();

}

int TitleList(String title) {

int dx = 0;

for(int z=0; z

if(title.equals(boxTitle.getItemAt(z))) {

dx = z;

}

}

return dx;

}

int DeptList(String dept) {

int dx = 0;

for(int z=0; z

if(dept.equals(boxDept.getItemAt(z))) {

dx = z;

}

}

return dx;

}

private void updateTitle(String title) {

}

}

java additem 错,Java错误:IllegalArgumentException:向容器添加窗口相关推荐

  1. java报错--java.io.IOException: Server returned HTTP response code: 502

    java.io.IOException: Server returned HTTP response code: 502 for URL: http://ip.taobao.com/service/g ...

  2. 最近纠结致死的一个java报错java.net.SocketException: Connection reset 终于得到解决

    自从SEOTcs系统11月份24日更新了一下SEO得分算法以来,一直困扰我的一个问题出现了,java的数据job任务,在执行过程中会经常报以下的错误: "2011-12-03 18:00:3 ...

  3. java报错java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that

    仔细阅读了代码发现 import java.sql.*;public class DataBase {public static void main(String[] args) throws SQL ...

  4. Cookie报错java.lang.IllegalArgumentException

    项目中做自动登录和保存密码时,Cookie报错Java.lang.IllegalArgumentException,上google查了下 在http://hi.baidu.com/xtxycy/blo ...

  5. 报错java.lang.IllegalArgumentException: Result Maps collection does not contain value解决

    使用mybatis报错 java.lang.IllegalArgumentException: Result Maps collection does not contain value for co ...

  6. 客户端启动报错java.lang.IllegalArgumentException: no server available的解决方案 SpringCloud中 Nacos做注册中心

    客户端启动报错java.lang.IllegalArgumentException: no server available的解决方案 SpringCloud中 Nacos做注册中心(谷粒) 报错内容 ...

  7. 使用cmd打开java文件,报错:“错误,编码GBK的不可映射字符”

    使用cmd打开java文件,报错:"错误,编码GBK的不可映射字符" 今天使用EditPlus写了一个小程序,用cmd运行时报错--"错误,编码GBK的不可映射字符&qu ...

  8. 【错误记录】Android 应用运行报错 ( java.lang.VerifyError: Verifier rejected class androidx. | 逆向中遇到的问题 )

    文章目录 一.报错信息 二.问题分析 一.报错信息 从 DEX 文件加载 Activity 组件 , 运行时报如下错误 ; 2021-12-12 14:02:52.432 5342-5342/com. ...

  9. 【错误记录】Android Studio 导入外部 so 动态库报错 ( java.lang.UnsatisfiedLinkError | 指定 APK 打包动态库的 CPU 架构 )

    文章目录 一.报错信息 二.解决方案 ( 指定 APK 打包动态库的 CPU 架构 ) 一.报错信息 外部引用 so 动态库 , 如果只有一个 armeabi-v7a 的动态库 , 那么如果在 arm ...

最新文章

  1. 分享一个电视节目API接口PHP调用代码
  2. Spring Boot Admin 2.5.5 发布,支持在线重启服务
  3. EPON与GPON的应用与区别
  4. 10个常用的代码简写技术,看懂一种是入门,全部看懂是大神!
  5. java之Map和Collection
  6. Javascript实现返回上一页面并刷新
  7. Linux策略路由--原理、配置和应用
  8. Java实现网页爬虫
  9. poj 1743 Musical Theme【后缀自动机】
  10. linux的make命令是什么,Linux中make, make install命令分别是什么
  11. 属兔的人今日运势-360星座网_明日运势属兔人(12.25)
  12. 计算机辅助几何设计等值曲线,中国科学技术大学硕士专业:计算机辅助几何设计...
  13. 厦门大学人工智能研究院招收2022年推荐免试研究生
  14. 用arduinoUNO做温度计
  15. 错题集:HDLBits lfsr5 Galois型lfsr
  16. python期末大作业之实现多线程爬虫系统
  17. QT 使用数据流方式QDataSteam读写结构体数据
  18. kafka中Topic、Partition、Groups、Brokers概念辨析
  19. 几个小妙招挑到满意的瓷砖,让你不花冤枉钱
  20. 求N分之一序列前N项和

热门文章

  1. php:兄弟连之面向对象版图形计算器1
  2. Kernel panic -not syncing:Attempted to kill init!
  3. java 人物属性
  4. 日志文件在VS中输出为乱码问题
  5. C#枚举、值、字符串的相互转换
  6. 【机器视觉】——相机和镜头的选择
  7. C# —— 进程与线程的理解
  8. linux创建zip+函数,linux+shell基础知识
  9. 华为荣耀5cvs华为v9play_华为荣耀v9play和荣耀9哪个好_华为荣耀v9play和荣耀9对比评测_飞翔教程...
  10. Git回滚操作的总结