热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

第七章,上机2~3

usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threa
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Job
{
public class CodeJob:Job
{
public CodeJob(string type, string name, string descrition) : base(type, name, descrition) { }
public CodeJob() { }

//有效代码行数
public int CodingLines { get; set; }
//目前没有解决的Bug个数
public int Bugs { get; set; }
//用时-工作日
public int WorkDay { get; set; }

//实现父类Job的抽象方法Execute,打开编码工作窗体
public override void Execute(FrmWorkList fw,int index)
{
FrmCode frmCode
= new FrmCode();
frmCode.fw
= fw;
frmCode.index
= index;
frmCode.ShowDialog();
}
public override void Show()
{
MessageBox.Show(
"有效编码行数:" + CodingLines + "\n遗留问题:" + Bugs + "\n工作日:" + WorkDay, "指标完成情况", MessageBoxButtons.OK);
}
}
}
CodeJob类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Job
{
public class Employee
{
//年龄
public int Age { get; set; }
//性别
public Gender Gender { get; set; }
//工号
public string ID { get; set; }
//姓名
public string Name { get; set; }
public List WorkList { get; set; }
//无参构造函数
public Employee()
{

}
//有参构造函数
public Employee( string name, List workList)
{
this.Name = name;
this.WorkList = workList;
}

}
}
Employee
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Job
{
public enum Gender
{
男,

}
}
枚举类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Job
{
public abstract class Job
{
//工作类型
public string Type { get; set; }
//工作名称
public string Name { get; set; }
//工作描述
public string Description { get; set; }

public Job(string type,string name,string description)
{
this.Type = type;
this.Name = name;
this.Description = description;
}
public Job() { }
//执行
public abstract void Execute( FrmWorkList fw,int index);
public abstract void Show();
}
}
Job
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Job
{
public class SE:Employee
{
//人气
private int _pupularity;

public int Pupularity
{
get { return _pupularity; }
set { _pupularity = value; }
}
public SE(string name, List workList)
:
base(name, workList)
{

}
}
}
SE
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace Job
{
public class TestJob:Job
{
public TestJob(string type, string name, string descrition) : base(type, name, descrition) { }
public TestJob() { }

//编写测试用例个数
public int CaseNum { get; set; }
//发现的Bugs
public int FindBugs { get; set; }
//用时
public int WorkDay { get; set; }

//实现父类Job的抽象方法Execute,打开测试任务窗体
public override void Execute(FrmWorkList fw,int index)
{
FrmTest frmTest
= new FrmTest();
frmTest.fw
= fw;
frmTest.index
= index;
frmTest.ShowDialog();
}
public override void Show()
{
MessageBox.Show(
"测试用例个数:" + CaseNum + "\n发现的Bug数量:" + FindBugs + "\n工作日:" + WorkDay, "指标完成情况", MessageBoxButtons.OK);
}
}
}
TestJob
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 Job
{
public partial class FrmWorkList : Form
{
public FrmWorkList()
{
InitializeComponent();
Init();
UpdateJob();
this.groupBox1.Text = empl.Name;
}
Employee empl;
//定义员工对象
public List jobList = new List();
public void Init()
{

jobList.Add(
new CodeJob("编码","编码","实现购物车模块"));
jobList.Add(
new CodeJob("编码", "编码基类", "完成项目基类编码"));
jobList.Add(
new TestJob("测试", "压力测试", "测试项目实现模块"));
//实例化员工对象
empl = new SE("王小毛",jobList);
}
//绑定工作列表
public void UpdateJob()
{
this.dgvWorkList.DataSource = empl.WorkList;
}

//填写执行情况
private void 执行ToolStripMenuItem_Click(object sender, EventArgs e)
{
//获取当行
int index = this.dgvWorkList.CurrentRow.Index;
//打开对应窗口,填写完成指标——重写父类方法Execute()
empl.WorkList[index].Execute(this,index);
}

private void 测试ToolStripMenuItem_Click(object sender, EventArgs e)
{
FrmTest frmTest
= new FrmTest();
frmTest.ShowDialog();
}

private void 完成情况ToolStripMenuItem_Click(object sender, EventArgs e)
{
int index = this.dgvWorkList.CurrentRow.Index;
empl.WorkList[index].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 Job
{
public partial class FrmTest : Form
{
//测试工作对象
TestJob job = new TestJob();
public FrmTest()
{
InitializeComponent();
}

public FrmWorkList fw;
public int index;
private void btnSubmit_Click(object sender, EventArgs e)
{
bool isError = false;
try
{
var test = (TestJob)fw.jobList[index];
test.CaseNum
= Int32.Parse(this.txtCaseNum.Text.ToString());
test.FindBugs
= Int32.Parse(this.txtFindBugs.Text.ToString());
test.WorkDay
= Int32.Parse(this.txtWorkDay.Text.ToString());
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
isError
= true;
}
if (!isError)
{
MessageBox.Show(
"提交成功!", "提示");
this.Close();
}
}
}
}
测试窗体
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 Job
{
public partial class FrmCode : Form
{
//编码工作对象
CodeJob job = new CodeJob();
public FrmCode()
{
InitializeComponent();
}
public FrmWorkList fw;
public int index;
//提交编码工作任务
private void btnSubmit_Click(object sender, EventArgs e)
{
bool isError = false;
try
{
job.CodingLines
= Int32.Parse(this.txtCoingLists.Text.ToString());
job.Bugs
= Int32.Parse(this.txtBugs.Text.ToString());
job.WorkDay
= Int32.Parse(this.txtWorkDay.Text.ToString());
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
isError
= true;
}
if (!isError)
{
MessageBox.Show(
"提交成功!","提示");
this.Close();
}
}
}
}
编码窗体

 


推荐阅读
  • 1.CSS3透明度渐变(从左到右)#grad{background:-webkit-linear-gradient(left,rgba(198,226,255,1),rgba(19 ... [详细]
  • 前端实用的CSS3技巧有哪些
    本文小编为大家详细介绍“前端实用的CSS3技巧有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“前端实用的CSS3技巧有哪些”文章能帮助大家 ... [详细]
  • 1、给边框加上圆角及阴影,如下代码:<!DOCTYPEhtmlPUBLIC"-W3CDTDHTML4.01TransitionalEN"" ... [详细]
  • http:js.alixixi.coma2014021292298.shtmlhttp:w3cshare.comexample?pid134http:w3cshare.comc ... [详细]
  • 在DIV内垂直居中UL - Centering Vertically an UL inside a DIV
    iamtryingtomakeanavigationmenuinsidea200pxx200pxsquare,thisnavigationlist(UL)chang ... [详细]
  • 很有意思的全景动画:(直接上代码)html部分:<div><div>css部分:.panorama{width:300px;hei ... [详细]
  • 小编给大家分享一下CSS3如何实现loading预加载动画特效,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章 ... [详细]
  • Ihaveafixed,100%heightmenuontheleftandIneedtocreateashadoweffectonitsrightside ... [详细]
  • 本文介绍了网页播放视频的三种实现方式,分别是使用html5的video标签、使用flash来播放以及使用object标签。其中,推荐使用html5的video标签来简单播放视频,但有些老的浏览器不支持html5。另外,还可以使用flash来播放视频,需要使用object标签。 ... [详细]
  • 怎么使用css3画三角形
    小编给大家分享一下怎么使用css3画三角形,希望大家阅读完这篇文章后大所收获,下面让我们一起去探讨吧!首先看一下css3画三角形的原理我们先来看 ... [详细]
  • 你有什么见解
    本文主要介绍关于html5,css3的知识点,对【关于雾霾网站设计】和【你有什么见解】有兴趣的朋友可以看下由【-你在暮色中】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的【】相关技术问题。你有 ... [详细]
  • 可能我们在看一些网页的源码时会发现自己从来没见过的属性或用法今天我就来总结一下CSS3的冷知识样式计算在CSS中也可以进行简单的计算通过calc函数可以实现这样还可以使我们的 ... [详细]
  • 前端每日实战 2018年10月至2019年6月项目汇总(共 20 个项目)
    过往项目2018年9月份项目汇总(共26个项目)2018年8月份项目汇总(共29个项目)2018年7月份项目汇总(共29个项目)2018年6月份项目汇总(共27个项目)2018年5 ... [详细]
  • 这篇文章主要为大家展示了“html5+css3网站菜单的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习 ... [详细]
  • CSS3 filter(滤镜) 属性
    CSS3filter(滤镜)属性-原文链接:CSS3filter(滤镜)属性效果预览这里仅展示黑白效果。filter:grayscale(100%);定义和使用filter 属性定 ... [详细]
author-avatar
antingwolf
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有