用C#写经理评分系统
先写需求:
01.显示员工信息
02.实现项目经理给员工评分的功能
第一步:
建立两个类,员工类和项目经理类
定义属性和方法
员工类:工号、年龄、姓名、人气值、项目经理年度评分、经理评价
项目经理类:ID、年龄、姓名、性别、资历,由于经理可以给员工评分,因此还有评分的方法
先上两张图再说:
查看窗体FrmShow

评分窗体FrmJudge

不说了,上代码
首先是员工类
using System.Text;
using System.Threading.Tasks; namespace 经理评分系统
{
public class SE
{ //员工工号
public int EngineerId { get; set; }
//员工年龄
public int Age { get; set; }
//员工性别
public char Sex { get; set; }
//员工姓名
public string Name { get; set; }
//员工人气值
public int PopularValue { get; set; }
//经理年度评分
public int MScore { get; set; }
//经理评价
public string Assess { get; set; } }
}
然后是经理类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks; namespace 经理评分系统
{
class PM
{
//经理ID
public int MId { get; set; }
//经理年龄
public int MAge{ get; set; }
//经理姓名
public string MName { get; set; }
//经理性别
public char MSex{get; set; } //定义评分方法
public void Judge(SE se,String assess,int score)
{
se.Assess = assess;
se.MScore = score;
}
}
}
接下来是查看窗体中的代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; namespace 经理评分系统
{
public partial class FrmShow : Form
{
//定义员工数组
public SE[] engineer=new SE[];
public FrmShow()
{
InitializeComponent();
Init(); //初始化SE集合信息
UpdateView();
} //初始化员工信息
public void Init()
{
SE s1 = new SE();
s1.EngineerId = ;
s1.Age = ;
s1.Name = "王小毛";
s1.Assess = "未评价";
s1.MScore = ;
engineer[]=s1; SE s2 = new SE();
s2.EngineerId = ;
s2.Age = ;
s2.Name = "周新雨";
s2.Assess = "未评价";
s2.MScore = ;
engineer[] = s2; SE s3 = new SE();
s3.EngineerId = ;
s3.Age = ;
s3.Name = "张烨";
s3.Assess = "未评价";
s3.MScore = ;
engineer[] = s3; } //将数据绑定到listview对象的lvAssess上
public void UpdateView()
{
lvAssess.Items.Clear();//评价后对数据进行刷新
for (int i = ; i < engineer.Length;i++ )
{
ListViewItem item = new ListViewItem();
//将员工信息绑定到listview中
item.Text = engineer[i].EngineerId.ToString();
item.SubItems.Add(engineer[i].Name);
item.SubItems.Add(engineer[i].Age.ToString());
item.SubItems.Add(engineer[i].MScore.ToString());
item.SubItems.Add(engineer[i].Assess);
this.lvAssess.Items.Add(item);
}
}
//双击ListView
private void lvAssess_DoubleClick(object sender, EventArgs e)
{
//获取当前选中的对象
if(this .lvAssess.SelectedItems.Count==)
{
return;//必须先选中一行
}
int index = ;
for (int i = ; i < engineer.Length;i++)
{
if(engineer[i].EngineerId.ToString()==this.lvAssess.SelectedItems[].Text.Trim())
{
index = i;
break;
}
}
//选中对象评分
FrmJudge frm = new FrmJudge(this,index);
frm.Show();
}
}
}
最后是经理评分窗体中写的代码
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; namespace 经理评分系统
{
public partial class FrmJudge : Form
{
//保存父窗体的实例
public FrmShow myParent;
//要评价的员工对象
private SE se; //参数:父窗体的实例、被评分的员工在员工数组中的位置
public FrmJudge(FrmShow fparent,int index)
{
InitializeComponent();
this.myParent = fparent;
this.se = myParent.engineer[index];
}
private void FrmJudge_Load(object sender, EventArgs e)
{
//窗体加载,显示要评价的员工的姓名和得分等信息
this.txtName.Text = se.Name;
this.txtPingJia.Text = se.Assess;
this.txtPingFen.Text = se.MScore.ToString(); }
//点击评分按钮响应事件
private void btnPingFen_Click(object sender, EventArgs e)
{
try
{
PM pm = new PM();
pm.Judge(se,this.txtPingJia.Text.Trim(),Int32.Parse(this.txtPingFen.Text.Trim()));
//刷新主窗体
this.myParent.UpdateView();
this.Close();
}
catch (Exception ex)
{
MessageBox.Show("评分失败!"+ex.ToString());
}
} private void btnCancel_Click(object sender, EventArgs e)
{
this.Close();
} }
}
用C#写经理评分系统的更多相关文章
- C#之经理评分系统
PM类,几乎全是属性 using System; using System.Collections.Generic; using System.Linq; using System.Text; usi ...
- 原生JS实现-星级评分系统
今天我又写了个很酷的实例:星级评分系统(可自定义星星个数.显示信息) sufuStar.star();使用默认值5个星星,默认信息 var msg = [........]; sufuStar.sta ...
- 使用C# WinForm窗体制作经理评分项目 ——S2 2.2
在窗口加载时初始化三个员工对象 用数组存放 这是员工类的大致字段和属性. 在FrmMain中给对象数组附初值 以上 FrmMain中用一个ListView控件展示员工信息,通过以上代码将对象数组中的内 ...
- 美国FICO评分系统简介
美国的个人信用评分系统,主要是Fair IsaacCompany 推出的 FICO,评分系统也由此得名.一般来讲, 美国人经常谈到的你的得分 ,通常指的是你目前的FICO分数.而实际上, Fair I ...
- 数组练习:各种数组方法的使用&&事件练习:封装兼容性添加、删除事件的函数&&星级评分系统
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- 基于python 信用卡评分系统 的数据分析
基于python 信用卡评分系统 的数据分析 import pandas as pd import matplotlib.pyplot as plt #导入图像库 from sklearn.ensem ...
- Django写的投票系统2(转)
在上一篇中 django实例:创建你的第一个应用投票系统(一) 已经介绍基本的功能,并已经启动服务了.这一节介绍数据库相关的东东. 首页打开mysite/settings.py配置文件, 设置数据库打 ...
- Mahout分布式运行实例:基于矩阵分解的协同过滤评分系统(一个命令实现文件格式的转换)
Apr 08, 2014 Categories in tutorial tagged with Mahout hadoop 协同过滤 Joe Jiang 前言:之前配置Mahout时测试过一个简 ...
- 103041000997维护的是周批,按周合并后再考虑最小采购批量、舍入值、然后回写到SAP系统
描述:103041000997维护的是周批量,但最终没有按周批量来回写数据. 业务逻辑如下: 1.净需求考虑数量按周汇总(也有按日.按3天,具体 要根据物料主数据维护来判断) 2.第1点的结果再加上安 ...
随机推荐
- MJRefresh在UITableView中的使用
前言 MJRefresh是一个好用的上下拉刷新的控件,github地址如下:https://github.com/CoderMJLee/MJRefresh 很多app都使用这个控件,我们也来了解一下它 ...
- 每天一个Linux命令(12)--more命令
more命令,功能类似cat, cat 命令是这个文件的内容从上到下显示在屏幕上,more会以一页一页的显示方便使用者主页阅读,而最基本的指令就是按空格键就往下一页显示,按B键就会往回一页显示,而且 ...
- Ceph osd启动报错osd init failed (36) File name too long
在Ceph的osd节点上,启动osd进程失败,查看其日志/var/log/ceph/ceph-osd.{osd-index}.log日志,报错如下: 2017-02-14 16:26:13.55853 ...
- PHP解耦的三重境界(浅谈服务容器)
阅读本文之前你需要掌握:PHP语法,面向对象 在完成整个软件项目开发的过程中,有时需要多人合作,有时也可以自己独立完成,不管是哪一种,随着代码量上升,写着写着就"失控"了,渐渐&q ...
- AJAX遮罩实例
function transferip() { var site_list=$("textarea[name='Oldsite']").val(); var ip_list=$(& ...
- 学习HTML5一周的收获4
/* [CSS常用文本属性] * 1.字体.字号: font-weight:字体的粗细,可选属性值:bold加粗 lighter细体 100~900数值(400正常,700 bold) fo ...
- 1620: [Usaco2008 Nov]Time Management 时间管理
1620: [Usaco2008 Nov]Time Management 时间管理 Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 506 Solved: ...
- js实现ajax的post请求步骤
post请求步骤与前篇的get请求步骤差别不大,只是增加了 xhr.setRequestHeader("Content-type","application/x-www- ...
- 你真的会 snapshot 吗? - 每天5分钟玩转 OpenStack(163)
这是 OpenStack 实施经验分享系列的第 13 篇. instance snapshot 操作可用于备份或者将 instance 保存为新的 image.如果在生产系统中执行 snapshot ...
- Calender设置固定时间遇到的问题
在使用Calender获取实例,设置成UTC时区时,发现比我们常规的月份多了一个月: 示例代码如下: Calendar calendar = Calendar.getInstance(TimeZone ...