当前位置: 首页 > news >正文

网站建设素材程序员培训班

网站建设素材,程序员培训班,wordpress怎样做单页网站,30天网站建设 视频教程成绩加权平均分计算程序#xff0c;带UI界面和输入保存功能。 因为本人对成绩的加权均分有所关注#xff0c;但学校的教务系统查分时往往又不显示个人的加权均分#xff0c;加之每次手动敲计算器计算很麻烦就花了点时间写了一个加权均分计算程序自用#xff0c;顺便开源。…成绩加权平均分计算程序带UI界面和输入保存功能。 因为本人对成绩的加权均分有所关注但学校的教务系统查分时往往又不显示个人的加权均分加之每次手动敲计算器计算很麻烦就花了点时间写了一个加权均分计算程序自用顺便开源。 UI界面通过Java的Swing类实现。 代码分享 WeightedAverageCalculatorGUI.java import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.util.Objects;public class WeightedAverageCalculatorGUI extends JFrame {private JTextField numSubjectsField;private JButton enterButton;private JScrollPane scrollPane;private JPanel inputPanel;private JButton calculateButton;private JLabel resultLabel;private JTextField filePathField;private JButton saveButton;public WeightedAverageCalculatorGUI() {setTitle(成绩加权平均分计算器);setSize(1600, 1200);setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setLocationRelativeTo(null);JPanel panel new JPanel(new BorderLayout());// 添加科目数量输入框和确定按钮JPanel topPanel new JPanel(new FlowLayout());JLabel numSubjectsLabel new JLabel(科目数量);numSubjectsLabel.setFont(Config.DEFAULT_FONT);numSubjectsField new JTextField(5);numSubjectsField.setPreferredSize(new Dimension(140, 55));numSubjectsField.setFont(Config.FIELD_FONT);enterButton new JButton(确定);enterButton.setFont(Config.DEFAULT_FONT);topPanel.add(numSubjectsLabel);topPanel.add(numSubjectsField);topPanel.add(enterButton);panel.add(topPanel, BorderLayout.NORTH);// 添加文件路径输入框和保存按钮JPanel bottomPanel new JPanel(new FlowLayout());JLabel filePathLabel new JLabel(文件保存路径);filePathLabel.setFont(Config.DEFAULT_FONT);filePathField new JTextField(20);filePathField.setFont(Config.FIELD_FONT);saveButton new JButton(保存);saveButton.setFont(Config.DEFAULT_FONT);bottomPanel.add(filePathLabel);bottomPanel.add(filePathField);bottomPanel.add(saveButton);panel.add(bottomPanel, BorderLayout.SOUTH);// 添加事件监听器以响应确定按钮点击事件enterButton.addActionListener(new ActionListener() {Overridepublic void actionPerformed(ActionEvent e) {if(!Objects.equals(numSubjectsField.getText(), )) {int numSubjects Integer.parseInt(numSubjectsField.getText());createInputPanel(numSubjects);revalidate();}}});// 添加事件监听器以响应保存按钮点击事件saveButton.addActionListener(new ActionListener() {Overridepublic void actionPerformed(ActionEvent e) {saveToFile();}});add(panel, BorderLayout.NORTH);setVisible(true);}private void createInputPanel(int numSubjects) {if (scrollPane ! null) {getContentPane().remove(scrollPane);}inputPanel new JPanel();inputPanel.setLayout(new GridLayout(0, 2));// 添加成绩和权重输入框Font labelFont Config.DEFAULT_FONT;Font fieldFont Config.FIELD_FONT;for (int i 1; i numSubjects; i) {JLabel scoreLabel new JLabel(科目 i 成绩);scoreLabel.setFont(labelFont);JTextField scoreField new JTextField(5);scoreField.setFont(fieldFont);JLabel weightLabel new JLabel(权重);weightLabel.setFont(labelFont);JTextField weightField new JTextField(10);weightField.setFont(fieldFont);inputPanel.add(scoreLabel);inputPanel.add(scoreField);inputPanel.add(weightLabel);inputPanel.add(weightField);}// 添加计算按钮和结果标签calculateButton new JButton(计算);calculateButton.setFont(Config.DEFAULT_FONT);calculateButton.addActionListener(new ActionListener() {Overridepublic void actionPerformed(ActionEvent e) {calculateWeightedAverage(numSubjects);}});inputPanel.add(calculateButton);resultLabel new JLabel();inputPanel.add(resultLabel);scrollPane new JScrollPane(inputPanel);scrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);getContentPane().add(scrollPane, BorderLayout.CENTER);revalidate();}private void calculateWeightedAverage(int numSubjects) {try {double totalWeightedScore 0;double totalWeight 0;resultLabel.setFont(Config.DEFAULT_FONT);resultLabel.setForeground(Color.RED);Component[] components inputPanel.getComponents();for (int i 0; i numSubjects; i) {JTextField scoreField (JTextField) components[i * 4 1];JTextField weightField (JTextField) components[i * 4 3];double score Double.parseDouble(scoreField.getText());double weight Double.parseDouble(weightField.getText());totalWeightedScore score * weight;totalWeight weight;}double weightedAverage totalWeightedScore / totalWeight;resultLabel.setText(加权平均分 String.format(%.6f, weightedAverage));// 保存结果到文件 // saveToFile();} catch (NumberFormatException e) {resultLabel.setText(输入格式错误请重新输入);}}private void saveToFile() {String filePath filePathField.getText() Config.SAVE_PATH System.currentTimeMillis() .txt;try {File file new File(filePath);FileWriter writer new FileWriter(file);writer.write(科目 | 成绩 | 权重\n);if(inputPanel null) {JOptionPane.showMessageDialog(this, 请先输入成绩和权重进行计算);return;}Component[] components inputPanel.getComponents();for (int i 0; i components.length / 4; i) {JTextField scoreField (JTextField) components[i * 4 1];JTextField weightField (JTextField) components[i * 4 3];double score Double.parseDouble(scoreField.getText());double weight Double.parseDouble(weightField.getText());writer.write(科目 (i 1) | score | weight \n);}writer.write(\n);writer.write(resultLabel.getText());writer.close();JOptionPane.showMessageDialog(this, 文件保存成功);} catch (IOException e) {JOptionPane.showMessageDialog(this, 保存文件时发生错误 e.getMessage());}}public static void main(String[] args) {UIManager.put(OptionPane.messageFont, Config.FIELD_FONT);// 设置全局对话框确认按钮大小UIManager.put(OptionPane.buttonFont, Config.FIELD_FONT);// 显示对话框SwingUtilities.invokeLater(new Runnable() {Overridepublic void run() {new WeightedAverageCalculatorGUI();}});} }Config.java import java.awt.*;public class Config {public static final int FONT_SIZE 30;public static final String FONT_NAME Microsoft YaHei;public static final Font DEFAULT_FONT new Font(FONT_NAME, Font.BOLD, FONT_SIZE);public static final Font FIELD_FONT new Font(FONT_NAME, Font.PLAIN, FONT_SIZE);public static final String SAVE_PATH \\WeightAverageRecord; }相关代码以及jar包已开源至GitHub仓库包括Config.java、WeightedAverageCalculatorGUI.java和WeightedAverageCalculator.jar。 GitHub地址https://github.com/wyd333/WeightedAverageCalculator?tabreadme-ov-filehttps://github.com/wyd333/WeightedAverageCalculator?tabreadme-ov-file 如果需要要对代码进行操作直接拷贝Config.java和WeightedAverageCalculatorGUI.java文件到Project的src目录下这两个文件最好放在同一目录下运行WeightedAverageCalculatorGUI.java即可。 如果只是使用功能而无需代码操作运行WeightedAverageCalculator.jar即可。确定配置过Java环境变量后直接cmd打开命令行窗口执行命令 java -jar WeightedAverageCalculator.jar的绝对路径 页面展示
http://www.pierceye.com/news/364677/

相关文章:

  • 云服务器如何安装网站爱站网seo综合查询
  • 个人建什么样的网站好wordpress添加用户登录
  • 中国教育网站官网做网站购买域名之后
  • 公司网站建设的优势新图闻的品牌建设经验
  • 网站建设是在商标哪个类别深圳宝安区新安街道
  • 网站推广服务器怎么选wordpress获取菜单链接地址
  • 横岗做网站外贸网站建设推广优化
  • 怎样搭建一个个人网站国金紫郡府淮北论坛
  • 网站建设类型wordpress词典模板
  • wordpress标签订阅插件优化网站视频
  • 聊城市建设工程质量监督站网站济南建站公司哪有
  • 郑州做网站便宜没有有知道钓鱼网站在哪儿做
  • 免费建自己域名的网站吗seo推广排名软件
  • 关于asp_sql网站开发的书籍专门做图片的网站cms
  • 淮安 网站建设:2003建网站
  • 怎么做网站的主页面编程软件scratch免费下载
  • 建设银行无锡分行网站网页版游戏单机游戏
  • 遵义网站建设中心如何低成本做网站推广
  • 国基建设集团有限公司网站学校网站网页模板
  • 舟山网站开发免费com域名网站
  • 网站开发 脚本之家怎么注册一个企业邮箱
  • 青岛做网站公企业管理软件销售
  • 简约风格的网站宁波余姚网站建设
  • 口碑好的免费网站建设企业做网站电话约见客户的对话
  • 做网站采集传统的网站开发模式
  • 网站用哪个软件做中国建设银行行号查询
  • 公司简介网站模板常州建设工程信息网
  • 综合类门户网站有哪些wordpress媒体库一直转圈
  • 官方网站建设属于什么科目室内设计很多人都干不下去了
  • 如何保存个人网站部队网站模板