文本行输入学生姓名,下来框选择课程名称,文本行输入课程成绩;点击“录入”按钮,相关信息显示在文本区;点击“统计”按钮,将所有录入的成绩的平均成绩显示在另一个文本行中。

package naizi;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*; public class UserJFrame extends JFrame implements ActionListener
{
private JTextField text_name,text_avescore,text_score;
private JComboBox combobox_course;
private JButton button_add,button_statistics;
private JTextArea text_user;
private int sum=0,count=0; public UserJFrame(){
this.setSize(360,200);
this.setLocation(300,240);
this.getContentPane().setLayout(new GridLayout(1,2,5,5));//网格布局 text_user = new JTextArea();
this.getContentPane().add(text_user); JPanel panel = new JPanel(new GridLayout(6,1,1,1)); //网格布局
this.getContentPane().add(panel); text_name = new JTextField("姓名");
panel.add(text_name); Object course[]={"Java", "C++"};
combobox_course = new JComboBox(course);
panel.add(combobox_course); text_score = new JTextField("0");
panel.add(text_score); button_add = new JButton("添加");
button_add.addActionListener(this); //注册监听事件
panel.add(button_add); text_avescore = new JTextField("平均成绩");
panel.add(text_avescore); button_statistics = new JButton("统计");
button_statistics.addActionListener(this); //注册监听事件;
panel.add(button_statistics);
this.setVisible(true);//显示界面 } public void actionPerformed(ActionEvent e){ //单击事件处理方法
if (e.getSource()== button_add){ //判断事件源
String aline="";
aline = text_name.getText();
aline += ", "+combobox_course.getSelectedItem();
aline += ", "+text_score.getText();
text_user.append(aline+"\n"); //追加到文本区
// text_user.setText(aline); //追加到文本区
sum=sum+Integer.valueOf(text_score.getText());//计算总分
count++;
text_score.setText("0");
}
if (e.getSource() == button_statistics){
text_avescore.setText(Integer.toString(sum/count));
}//设置统计成绩 }
public static void main(String [] args){
new UserJFrame();//运行程序窗体
}
}

运行结果如图:

Java第二次作业第四题的更多相关文章

  1. Java第二次作业第三题

    四叶玫瑰线的图形设计:当用鼠标拖拽改变窗口大小时,四叶玫瑰线会重新绘制 package naizi; import java.awt.*; import java.awt.event.*; impor ...

  2. Java第二次作业第五题

    自定义异常类,非法年龄类,并在person3类中使用此类,根据情况抛出异常,并进行处理. package naizi; class IllegalAgeException extends Except ...

  3. Java第二次作业參考代码

    Java第二次作业參考代码 [程序11] 题目:有1.2.3.4四个数字,能组成多少个互不同样且无反复数字的三位数?都是多少? public class lianxi11 { public stati ...

  4. JAVA第二次作业展示与学习心得

    JAVA第二次作业展示与学习心得 在这一次作业中,我学习了复选框,密码框两种新的组件,并通过一个邮箱登录界面将两种组件运用了起来.具体的使用方法和其他得组件并没有什么大的不同. 另外我通过查阅资料使用 ...

  5. Java第二周作业

    Java第二周作业 本周作业: 参考http://www.cnblogs.com/rocedu/p/7911138.html 学习第二三章视频 参考http://www.cnblogs.com/roc ...

  6. Java第二次作业——数组和String类

    Java第二次作业--数组和String类 学习总结 1.学习使用Eclipse关联jdk源代码,查看String类的equals()方法,截图,并学习其实现方法.举例说明equals方法和==的区别 ...

  7. Java第二次作业第二题

    请编写图像界面程序,用户在第一文本行输入数字,有三个按钮,分别是计算2进制,8进制,16进制,点击其中一个按钮,第一个文本行中的数据转换为相应进制的数显示在第二个文本行中. package naizi ...

  8. Java第三次作业第四题

    4. [问题描述]读取一个文本文件in.txt,然后将这个文件的内容,反序写到另一个文件out.txt中. [输入形式]从文件in.txt中读信息. [输出形式]反序内容写入out.txt文件中. [ ...

  9. Java第二次作业第一题

    编写图形界面程序,在窗体中设置菜单栏,在菜单栏上添加"file"菜单,在文件菜单中添加"new"和"quit"两个菜单项,其中"q ...

随机推荐

  1. 开发规范 小白进阶 python代码规范化

    开发规范 软件开发,规范项目的目录结构,代码规范,遵循 PeP8规范等等,让你更加清晰的,合理开发 一功能分类(文件名) settings.py配置文件 配置文件放一些静态参数, 划归固定的路径,文件 ...

  2. Mina各组件介绍

    Mina各组件介绍 上一篇文章已经系统的介绍了Mina的运行流程,Apache推出的Mina性能上很是高效,上章节我们知道内部有很多的类,各个类之间的依赖也是很多,他们之家都是相互依赖. 下面主要看看 ...

  3. application.yml 增加数据库连接,重启日志卡死

    SpringBoot引入JPA,application.ymlapplication.yml增加数据库链接参数,启动卡死,日志没有动,如下图 折腾好久,后面发现用 Maven的package 过程中 ...

  4. .net core 微服务项目-介绍篇

    项目介绍 1.各种方式连接API都会连接到 APIGateway 来进行统一的分发 Ocelot 2.当api需要授权时 需要请求授权服务 IdentityServer4 3.授权服务对请求进行调用u ...

  5. xgboost保险赔偿预测

    XGBoost解决xgboost保险赔偿预测 import xgboost as xgb import pandas as pd import numpy as np import pickle im ...

  6. unity_小功能实现(客户端相互通信功能)

    服务器端:在VS中新建项目,用于服务器的搭建 using System;using System.Collections.Generic;     using System.Net.Sockets;u ...

  7. Java集合框架之HashSet浅析

    Java集合框架之HashSet浅析 一.HashSet综述: 1.1HashSet简介 位于java.util包下的HashSet是Java集合框架的重要成员,它在jdk1.8中定义如下: publ ...

  8. [企业微信通知系列]Jenkins发布后自动通知

    一.前言 最近使用Jenkins进行自动化部署,但是部署后,并没有相应的通知,虽然有邮件发送通知,但是发现邮件会受限于接收方的接收设置,导致不能及时看到相关的发布内容.而由于公司使用的是企业微信,因此 ...

  9. MySQL5.7.27报错[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated

    mysql5.7.27在运行更新语句时出现如下情况,mysql5.6之前没有这种情况出现. of ORDER BY clause is not in GROUP BY clause and conta ...

  10. 选择排序&冒泡排序&折半查找

    //选择排序 void test2(int a[],int len){ //每次找出一个最小值,最小值依次与原数组交换位置,通过下标来完成交换,最小值下标每次都在变,变量存储 //    假如第一个是 ...