>  기사  >  백엔드 개발  >  C# 기반의 관리자 채점 시스템 작성에 대한 자세한 설명(그림 및 텍스트)

C# 기반의 관리자 채점 시스템 작성에 대한 자세한 설명(그림 및 텍스트)

黄舟
黄舟원래의
2017-03-16 11:31:362043검색

최근에 c#을 사용하여 관리자 평가 시스템을 작성해야 하는 프로젝트를 수행했습니다. 요구 사항은 직원 정보를 표시하고 프로젝트 관리자가 직원을 평가하는 기능을 구현하는 것입니다. 필요한 것이 무엇인지 차근차근 살펴보세요.

먼저 요구 사항을 작성하세요.

01. 직원 정보 표시

02. 직원 평가 기능에 프로젝트 관리자 구현

1단계:

직원 클래스와 프로젝트 관리자 클래스 두 클래스 생성

정의속성 및 방법

직원 클래스: 직위, 나이, 이름, 인기도, 프로젝트 관리자 연간 등급, 관리자 평가

프로젝트 관리자 클래스: 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[3];
    public FrmShow()
    {
      InitializeComponent();
      Init();  //初始化SE集合信息
      UpdateView();
    }
    //初始化员工信息
    public void Init() 
    {
      SE s1 = new SE();
      s1.EngineerId = 111;
      s1.Age = 26;
      s1.Name = "王小毛";
      s1.Assess = "未评价";
      s1.MScore = 0;
      engineer[0]=s1;
      SE s2 = new SE();
      s2.EngineerId = 112;
      s2.Age = 22;
      s2.Name = "周新雨";
      s2.Assess = "未评价";
      s2.MScore = 0;
      engineer[1] = s2;
      SE s3 = new SE();
      s3.EngineerId = 113;
      s3.Age = 30;
      s3.Name = "张烨";
      s3.Assess = "未评价";
      s3.MScore = 0;
      engineer[2] = s3;
    }
    //将数据绑定到listview对象的lvAssess上
    public void UpdateView()
    {
      lvAssess.Items.Clear();//评价后对数据进行刷新
      for (int i = 0; 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==0)
      {
        return;//必须先选中一行
      }
      int index = 0;
      for (int i = 0; i < engineer.Length;i++)
      {
        if(engineer[i].EngineerId.ToString()==this.lvAssess.SelectedItems[0].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# 기반의 관리자 채점 시스템 작성에 대한 자세한 설명(그림 및 텍스트)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.