热门标签 | 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();
}
}
}
}
编码窗体

 


推荐阅读
  • 为了优化用户体验,本文探讨了如何调整下拉菜单的宽度。通过合理设置宽度,可以提升界面的美观性和易用性。文章提供了具体的代码示例,帮助开发者实现这一目标。例如,可以通过 CSS 或 JavaScript 来动态调整下拉菜单的宽度,确保其在不同设备和屏幕尺寸上都能保持良好的显示效果。 ... [详细]
  • 本文探讨了如何通过检测浏览器类型来动态加载特定的npm包,从而优化前端性能。具体而言,仅在用户使用Edge浏览器时加载相关包,以提升页面加载速度和整体用户体验。此外,文章还介绍了实现这一目标的技术细节和最佳实践,包括使用User-Agent字符串进行浏览器识别、条件加载策略以及性能监控方法。 ... [详细]
  • 在第10天的夜灵HTML日志中,我们深入探讨了浏览器兼容性和高级选择器的应用。CSS3引入了许多新属性,但在旧版浏览器中的支持情况并不理想。然而,目前主流浏览器的最新版本已全面支持这些新特性。对于那些不支持CSS3新属性的浏览器,我们提供了多种解决方案,以确保网站在不同环境下的兼容性和用户体验。此外,我们还详细讨论了如何利用高级选择器提升页面布局的灵活性和可维护性。 ... [详细]
  • 本文深入探讨了 hCalendar 微格式在事件与时间、地点相关活动标记中的应用。作为微格式系列文章的第四篇,前文已分别介绍了 rel 属性用于定义链接关系、XFN 微格式增强链接的人际关系描述以及 hCard 微格式对个人和组织信息的描述。本次将重点解析 hCalendar 如何通过结构化数据标记,提高事件信息的可读性和互操作性。 ... [详细]
  • CSS中的pointer-events属性详解与应用
    在CSS中,`pointer-events`属性是一个非常实用但常被忽视的功能。它主要用于控制元素是否响应鼠标事件。当一个元素覆盖在其他元素之上时,通过设置`pointer-events`属性,可以决定该元素是否能够接收鼠标点击、悬停等交互操作,从而实现更灵活的用户界面设计。例如,将`pointer-events`设置为`none`可以使元素透明地传递鼠标事件,方便实现复杂的叠加效果和交互逻辑。 ... [详细]
  • HTML5 Web存储技术是许多开发者青睐本地应用程序的重要原因之一,因为它能够实现在客户端本地存储数据。HTML5通过引入Web Storage API,使得Web应用程序能够在浏览器中高效地存储数据,从而提升了应用的性能和用户体验。相较于传统的Cookie机制,Web Storage不仅提供了更大的存储容量,还简化了数据管理和访问的方式。本文将从基础概念、关键技术到实际应用,全面解析HTML5 Web存储技术,帮助读者深入了解其工作原理和应用场景。 ... [详细]
  • 如何使网页自适应电脑屏幕分辨率?
    在1024*768或者800*600的分辨率下可以自动调整成适用于该客户端分辨率的大小。  第一种方法:做一个网页解决问题(长了点)  如果只是因为浏览者改变了浏览器的设置,或者因为浏览器不兼容,使自 ... [详细]
  • 一篇文章搞定css3 3d效果
    css33d学习心得卡片反转魔方banner图首先我们要学习好css33d一定要有一定的立体感通过这个图片应该清楚的了解到了x轴y轴z轴是什么概念了。首先先给大家看一个小 ... [详细]
  • 这篇文章将为大家详细讲解有关如何使用JavaScript动态设置CSS3属性值,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读 ... [详细]
  • 前端实用的CSS3技巧有哪些
    本文小编为大家详细介绍“前端实用的CSS3技巧有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“前端实用的CSS3技巧有哪些”文章能帮助大家 ... [详细]
  • 1.CSS3透明度渐变(从左到右)#grad{background:-webkit-linear-gradient(left,rgba(198,226,255,1),rgba(19 ... [详细]
  • 1、给边框加上圆角及阴影,如下代码:<!DOCTYPEhtmlPUBLIC"-W3CDTDHTML4.01TransitionalEN"" ... [详细]
  • http:js.alixixi.coma2014021292298.shtmlhttp:w3cshare.comexample?pid134http:w3cshare.comc ... [详细]
  • 如何将PHP文件上传至服务器及正确配置服务器地址 ... [详细]
  • 你有什么见解
    本文主要介绍关于html5,css3的知识点,对【关于雾霾网站设计】和【你有什么见解】有兴趣的朋友可以看下由【-你在暮色中】投稿的技术文章,希望该技术和经验能帮到你解决你所遇的【】相关技术问题。你有 ... [详细]
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社区 版权所有