java课程添加

package login;
import java.awt.Color;
import java.awt.Container;
import java.awt.Font;
import java.awt.event.*;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;

import javax.swing.*;
public class Demo extends JFrame {

private static final long serialVersionUID = 1L;
static int counter =0;//用来记录输入课程的个数
static String []a1=new String [100];//用来存储课程名字
static String []a2=new String [100];//用来存储教师名字
static String []a3=new String [100];//用来存储上课楼层
static String []a4=new String [100];//用来存储教室名字

public static void main(String args[]) throws Exception{
JFrame f = new JFrame("课程添加程序");
f.setBounds(500, 100, 500, 500);//设置窗体的大小
f.setResizable(false);//设置窗体不可以被放大或者缩小
Container c = f.getContentPane();
c.setBackground(Color.WHITE);//设置窗体背景颜色为白色
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置窗体点击关闭时停止运行
JButton b1 = new JButton("保存");//设置按钮
JLabel l1 = new JLabel("课程名称:"); //设置标签
JLabel l2 = new JLabel("任课教师:");//设置标签
JLabel l3 = new JLabel("上课地点");//设置标签
JComboBox<String> jb1 =new JComboBox<>();//设置下拉列表
JComboBox<String> jb2 =new JComboBox<>();//设置下拉列表
jb1.addItem("王建民");jb1.addItem("刘丹");jb1.addItem("刘立嘉");jb1.addItem("王辉");jb1.addItem("杨子光");//向下拉列表中添加组件
jb2.addItem("一教");jb2.addItem("二教");jb2.addItem("三教");jb2.addItem("基教");//向下拉列表中添加组件
JTextField t3 = new JTextField(10);//设置文本域的长度
f.setLayout(null);//设置绝对布局
JButton b2 =new JButton("重置");
b2.setBounds(180, 420, 150, 30);
JTextField t2 =new JTextField(20);
l1.setBounds(20, 40, 90,90);l1.setFont(new Font("楷体",Font.BOLD,15));//设置每个零件的具体位置,字体,大小,粗细情况
l2.setBounds(20, 140, 90,90);l2.setFont(new Font("楷体",Font.BOLD,15));
l3.setBounds(20, 240, 90,90);l3.setFont(new Font("楷体",Font.BOLD,15));
jb1.setBounds(100, 170, 150,30);jb1.setFont(new Font("楷体",Font.PLAIN,20));
jb2.setBounds(100, 270,150,30);jb2.setFont(new Font("楷体",Font.BOLD,20));
t3.setBounds(100, 70, 150,30);t3.setFont(new Font("楷体",Font.BOLD,20));
b1.setBounds(180, 380, 150,30);b1.setFont(new Font("楷体",Font.BOLD,20));
t2.setBounds(250,270,150,30);b1.setFont(new Font("楷体",Font.BOLD,20));
c.add(b1);c.add(l1);c.add(l2);c.add(l3);c.add(jb1);c.add(jb2);c.add(t3);c.add(t2);//添加组件
f.setVisible(true);//设置窗体可见
b1.setBackground(Color.GREEN);//设置按钮的背景颜色
c.add(b2);b2.setBackground(Color.GREEN);b2.setFont(new Font("楷体",Font.BOLD,20));
b1.addActionListener(new ActionListener() {//添加点击按钮时的动作监听
public void actionPerformed(ActionEvent e) {
int u=0;//用来记录是否重复
String s =(String) t3.getText();//获取文本域中输入的课程名字
for(int i=0;i<counter;i++) {
if(s.equals(a1[i]))
{
JOptionPane.showMessageDialog(null,"课程重复");//判断课程重复
u=1;
t3.setText("");
t2.setText("");
}
}

if(u==0) {
a1[counter]=(String) t3.getText();
a2[counter]=(String) jb1.getSelectedItem();
a3[counter]=(String) jb2.getSelectedItem();
a4[counter]=(String) t2.getText();
counter++;
try {
write();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}}
}
});
b2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
t3.setText("");
t2.setText("");

}
});
}

public static void write() throws IOException {
FileWriter fw =new FileWriter("E:\\JAVA\\loginSystem.java\\src\\loginSystem\\java\\text.txt");
BufferedWriter bw =new BufferedWriter(fw);
int i=0;
for(i=0;i<counter;i++) {
System.out.println((i+1)+": "+a1[i]+" "+a2[i]+" "+a3[i]+" "+a4[i]);
bw.newLine();
}
bw.close();

}
}

原文地址:https://www.cnblogs.com/hang-hang/p/11712923.html

时间: 2024-10-16 02:31:37

java课程添加的相关文章

老白的JAVA课程14 GUI 窗口的设置

项目驱动 需求分析-系统设计-编码-测试-维护期 GUI Swing程序的建立步骤 1.建立容器-可以容纳其他图形对象的类,容器中还可以添加容器 2.建立组件-组件就是一套图形对象 3.将组件放到容器当中-将创建好的对象添加到容器中,才能在窗口中显示 4.设置布局 JFrame:带有标题和边框的顶级窗口 JPanel:就是一个矩形的区域,其中可以包含图形组件,也可以包含其他JPanel JApplet:在浏览器中运行的容器 JScrollpane:一种可以实现水平或垂直滚动条的容器 JDiolo

老白的JAVA课程13 接口

之前我们讲到了java4大特征的最后一个抽象的特征,其实在抽象这个特征里面,我们还有一个特征-接口,今天我们就来学一学接口.  用电脑,手机等电子产品来比喻接口,可以更好的理解,比如用符合接口的插头就可以了.  接口具有很好的扩展性,方便.  接口的由来   例子:奥拓奥迪都是汽车,汽车的维护都是可以用调节引擎和更换汽油的方法,那么奥拓和奥迪也都可以:但是有了更多的维护对象以后,比如说大货车,卡车等等,其他的对象不一定需要每一步维护,或者都不需要维护:又比如不同枪支有不同特性的例子.  因此,我

老白的JAVA课程17 集合

集合 数组的缺点:长度限制 添加的类型有限制 集合自动变长 随意添加 但是数组的效率高,在游戏里用的比较多 SuperArry是一套的集合框架 两大类 接口 1 Collection  单一值的元素  1.1 list 有序的 放进去的顺序和里面的顺序是一样的 (不是传统的里面有没有顺序的意思)    可重复的    实现类 ArryList 1.2 set  无序的 里面和放进去的不是一样的    只能是不可重复的 2 Map  键值对 键 值  map的键是不能重复的 老白的JAVA课程17

java课程设计团队(搜索引擎)

JAVA课程设计 基于学院网站的搜索引擎 对学院网站进行抓取.建索(需要中文分词).排序(可选).搜索.摘要显示.可以是GUI界面,也可以是Web界面. 一.团队介绍 学号 班级 姓名 简介 201621123049 网络1612 [组长]袁德兴 热衷于网络安全 201621123047 网络1612 陈芳毅 有思想,有深度 ,有能力 201621044079 网络1612 韩烨 学习力强,人称韩可爱 201621123055 网络1612 刘兵 人称五社区发哥,动手能力强 2016211230

老白的JAVA课程16 卡片布局 javaBean

基于组件的开发 javaBean 组成部件 规范   1: 必须要有一个公共的构造方法,javaBean这个类也必须是公共的   2:javaBean中的属性都是私有的,每一个属性都必须提供符合命名规范的set和get方法   3:应该是可序列化的,但是并不是必须的 类型:  1:简单属性javabean  set和get足够简单  2:绑定属性JavaBean  属性复杂,需要绑定其他属性  3:约束属性JavaBean  set和get方法有约束 cardlayout.show(父容器,按钮

java(课程设计之记事本界面部分代码公布)

代码:涉及记事本的一些界面......!! 1 /* 2 *java课程设计之记事本(coder @Gxjun) 3 * 编写一个记事本程序 4 * 要求: 5 * 用图形用户界面实现. 6 * 能实现编辑.保存.另存为.查找替换等功能. 7 * 提示:使用文件输入输出流. 8 */ 9 package project; 10 11 import javax.swing.*; 12 import java.awt.*; 13 import java.awt.event.*; //引用类设置触发事

Java课程设计—学生成绩分析系统

Java课程设计 - 我的选题是学生成绩分析系统. 下面是课程的需求图: 完成的这个小系统其实逻辑代码是非常简单的,唯一感觉有难点的地方在于涉及到了知识点比较多.当时只是匆匆地大概学了Java的一些基本知识,书上的例题和代码也没怎么敲过, 几乎都是在边做的过程中边学具体需要用到的东西: 其中感觉最麻烦的地方就是JTable.文件读取IO流以及绘图和给各个组件布局的时候. 另外还花了些功夫在UI上面:我这次是用到了substance.jar的swing美化包,想了解的可以百度下,网上有很多教程.

JAVA课程笔记_1

一 课程内容 set path查看路径信息:当编译一个程序或命令时,先从当前目录查找,如果没有,按path中的路径按顺序查找,先找到后就不查找后面的路径了. 可以将目录加入环境变量,set path="复制的路径" 可以在.java程序中编写多个类,当编译时,每个类生成各自的字节码文件. 由于多个类的字节码文件不利于管理,使用bin目录下的jar命令可以将多个字节码文件打包成jar包发布给其他程序员使用. 使用方法:先在命令提示符下输入jar,会出现使用方法和实例.Jar打包两个cla

Java-第三章-刘珊珊同学参加了Java课程的学习,她父亲和母亲承诺

import java.util.*; public class lianxi72_5 { public static void main(String[] args) { // TODO Auto-generated method stub Scanner inport = new Scanner(System.in) ; System.out.println("请输入成绩"); int math =inport.nextInt(); if(math>=100) { Syste