C#请假加班案例(二)

增加id输入框,用来进行多人管理。增加了一个Person类,请假和加班可以视为该类的方法。多人用Person数组表示, id-1等于数组的索引。

csharp 复制代码
class Person
{
    public int id;
    public int days;
    public void qingjia(int qjDays)
    {
        this.days -= qjDays;
    }
    public void jiaban(int jbDays)
    {
        this.days += jbDays;
    }
}
 ...
 Person p1=new Person();
 Person p2=new Person();
 Person[] arr=new Person[2];
  private void InitializeComponent()
 {
     this.p1.id = 1;
     this.p1.days = 10;
     this.p2.id=2;
     this.p2.days = 20;
     this.arr[0] = p1;
     this.arr[1] = p2;  
  } 
请假按钮点击事件处理方法:
csharp 复制代码
 private void button1_Click(object sender, EventArgs e)
 {

     //请假
     if (String.IsNullOrEmpty(this.textBox1.Text))
     {
         MessageBox.Show("id不能为空");
         return;
     }
     int holiday = int.Parse(this.textBox1.Text);
     int id=int.Parse(this.textBox3.Text);
     if (this.arr[id - 1].days - holiday < 0)
     {
         MessageBox.Show("假期余额不足");
         return;
     }
     this.arr[id - 1].qingjia(holiday);

     this.label4.Text = this.arr[id - 1].days.ToString() ;
 }

开头判断id是否为空,this.arrid-1是id对应的Person对象。

加班按钮点击事件处理方法:
csharp 复制代码
private void button2_Click(object sender, EventArgs e)
{
    if (String.IsNullOrEmpty(this.textBox1.Text))
    {
        MessageBox.Show("id不能为空");
        return;
    }
    //加班
    int jiaban=int.Parse(this.textBox2.Text);
    int id = int.Parse(this.textBox3.Text);
    this.arr[id-1].jiaban(jiaban);
    this.label4.Text = this.arr[id-1].days.ToString();
}
相关推荐
JustCheng8 小时前
Dispacher(1/2)深入解析-详细使用
c#
Interview Aid11214 小时前
TikTok OA 四题分享|半小时内 AC,题目基本都是实现题
java·开发语言·算法·面试·职场和发展
CoderIsArt1 天前
C#中UI 线程与 Dispatcher
开发语言·ui·c#
AI情绪识别开源1 天前
检信 ALLEMOTION OS 加密打包可执行程序 — 全面测试报告版本: v1.3功能测试 / 性能测试 /
开发语言·数据结构·人工智能·功能测试
「QT(C++)开发工程师」1 天前
C++ auto 用法详解
开发语言·c++
OPEN-F1 天前
C++STL教程:容器适配器与实用工具
开发语言·c++
yaoxin5211231 天前
507. Java 反射 - 在 BeanFactory 中实现依赖注入
java·开发语言
OPEN-F1 天前
C++模板教程:变参模板、折叠表达式与SFINAE
java·开发语言·c++
有点。1 天前
C++二叉搜索树进阶
开发语言·c++