签到计时

 public  List<myist> list = new List<myist>();//创建一个单列集合
        private void Form1_Load(object sender, EventArgs e)
        {
            //将他们都存在这个单列集合中
            myist a = new myist();
            a.hao = 20090101;
            a.name = "王小毛";
            a.age = 19;
            a.Sex = "男";

            myist a2 = new myist();
            a2.hao = 20090102;
            a2.name = "周新宇";
            a2.age = 19;
            a2.Sex = "男";

            list.Add(a);
            list.Add(a2);
            dataGridView1.DataSource = list;//将单列集合中的数据连接到 dataGridView中。

        }

public void clear(List<myist> list)
        {

            dataGridView1.DataSource = new BindingList<myist>(list);//刷新dataGridView数据。
        }
        private void 新增ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            //新增一个
            Form2 a = new Form2();
            a.fmr = this;
            a.Show();
            this.Hide();
        }

  



   private void 删除ToolStripMenuItem_Click(object sender, EventArgs e)
        {

                 string  a= dataGridView1.SelectedCells[0].Value.ToString();//获取首行首列的值
                 for (int i = 0; i < list.Count; i++)
                 {
                     //遍历出list下标和dataGridView首行首列的值,让他们作比较,相等就删除。
                     int b = Convert.ToInt32 (a);
                     if(list[i].hao==b)
                     {
                         list.RemoveAt(i);//删除
                     }
                     dataGridView1.DataSource = new BindingList<myist>(list);//刷新dataGridView数据
                 }

        }

//查看
        private void button1_Click(object sender, EventArgs e)
        {
            List<myist> temp = new List<myist>();
           //遍历出ID,根据工号模糊查询。
            foreach (myist item in list)
            {
               string num=item.hao.ToString();//进行类型转换,因为hao号是int类型

                //用string类的INdexOf()实现模糊查询。
                  if (num.IndexOf(this.textBox1.Text.Trim())!=-1)
                  {
                      temp.Add(item);
                }
                  dataGridView1.DataSource = new BindingList<myist>(temp);//刷新 dataGridView窗体。
            }
        }

  



  public static  Dictionary<string, Record> recordList = new Dictionary<string, Record>();//创建一个双列集合,将签到时间和签退时间存放在一个双列集合中。
        private void 签到ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            //查看是否选中一行。
            if (dataGridView1.SelectedRows.Count != 1)
            {
                MessageBox.Show("请选中一行");
            }
            string s = dataGridView1.SelectedCells[0].Value.ToString();
            //遍历得到key的值,然后和dataGridView下标为id的值相匹配。
            foreach (string hao  in recordList.Keys  )
            {
                if(s==hao)
                {
                    MessageBox.Show("已经签到");
                }
            }

            Record a = new Record();
            a.hao = s;
            a.Name = dataGridView1.SelectedCells[1].Value.ToString();
            a.time1 = DateTime.Now;//获取签到的时间。
            recordList.Add(a.hao,a);
            MessageBox.Show("签到成功");

        }

        private void 签退ToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (this.dataGridView1.SelectedRows.Count!=1)
            {
                MessageBox.Show("请选中一行");
            }
            string hao = dataGridView1.SelectedCells[0].Value.ToString();
            bool isout = false;
            foreach (string key  in recordList.Keys)
            {
                if(key==hao){
                    recordList[key].time1 = DateTime.Now;
                    MessageBox.Show("签退成功");
                    isout = true;
                    break;
                }
            }
            if(!isout)
            {
                MessageBox.Show("抱歉签到未成功");
            }
        }

  

时间: 2024-10-28 19:06:56

签到计时的相关文章

ansible自动化部署之第三方模块添加(时间计时模块)

一.时间计时模块 ansible中可以加入一个计时模块在执行ansible-playbook时显示执行时长.方便使用. 1.配置方法 cd /etc/ansible mkdir callback_plugins cd callback_plugins wget https://raw.githubusercontent.com/jlafon/ansible-  \                     profile/master/callback_plugins/profile_tasks.

OpenMp多线程编程计时问题

在做矩阵乘法并行化测试的时候,在利用<time.h>的clock()计时时出现了一点问题. 首先看串行的程序: // matrix_cpu.c #include <stdio.h> #include <stdlib.h> #include <time.h> #define NUM 2048 void matrixMul(float *A, float *B, float *C, int M, int K, int N) {     int i, j, k;

百度贴吧云签到助手使用方法

贴吧云签到助手地址: http://tieba.aibing.cc 百度账号绑定: 注册个账号.进入签到助手/百度账号管理/自动绑定 贴吧云签到助手使用方法 输入百度账号绑定邮箱.密码即可绑定: 由于百度强制开启了异地登陆验证,很可能导致自动绑定失败.如果你确定输入无误但却提示账号密码错误,我们就只能使用 签到助手中的"手动签到".通过输入BDUSS来绑定: 1.点此登录需要绑定的百度账号2.点击此处获取BDUSS3.复制你看到的那一大串英文和数字(不包括双引号),粘贴到签到助手的输入

XC1263 签到题(哇 ,写得我怀疑人生啊!!!@!@)

1263: 签到题 时间限制: 1 Sec  内存限制: 128 MB提交: 174  解决: 17 标签提交统计讨论版 题目描述 大家刚过完寒假,肯定还没有进入状态,特意出了一道签到题给各位dalao压压惊. 如果一个数字其中每一位都互不相同,则这个数满足要求.(如:21.10满足要求,11 不满足要求). 给出一个范围[a,b],并求出在范围内符合要求数字的数量. 输入 第一行T表示组数,T<=1000. 每一组输入一行,包含两个数字a,b.1<=a,b<=100000. 输出 对于

casperjs模拟登录-jd无验证码签到

var casper = require('casper').create({ clientScripts:[ 'E:/jquery.js' ] }); var accountLogin = '.login-form .login-tab-r a'; var hidestr = "hide",has_verify = false; casper.start('http://vip.jd.com/'); casper.then(function(){ this.wait(5000,fun

扩展progress_timer的计时精度

progress对外输出精度只有小数点后两位(这点可以运行上节程序进行验证),即精确到0.01秒. 我们使用模板技术仿造一个progress_timer编写一个新类:new_progress_timer,以实现任意精度的输出. new_progress_timer同样继承自timer,只是编程了模板类.模板参数N指明了输出精度,默认值为2,与progress_timer相同. #include <boost\timer.hpp> #include <boost\progress.hpp&

阶段一:用Handler和Message实现计时效果及其中一些疑问

“阶段一”是指我第一次系统地学习Android开发.这主要是对我的学习过程作个记录. 本来是打算继续做天气预报的优化的,但因为某些原因,我要先把之前做的小应用优化一下.所以今天就插播一下用Handler和Message实现计时效果. 首先,简要说明一下,这个应用有两个显示数字的Text,一个是显示秒,另一个是显示毫秒,而每10毫秒发送一次Message,让显示毫秒的Text加1,每1000毫秒,也就一秒,就让显示秒的Text加1.此外,还有一个自己制作的圆形进度条,每过一秒会增加6度的弧.这个应

签到领金币脚本

1 #!/use/bin/env python 2 # -*- coding: utf-8 -* 3 # Author : nick 4 # Desc : v2ex每日签到 5 6 import urllib 7 import urllib2 8 import cookielib 9 import re 10 import sys 11 from bs4 import BeautifulSoup as bs 12 from datetime import datetime 13 14 15 re

Unity3D 游戏计时功能实现

最近工作实在是太忙了,没办法认真写博客,但是还是要好好记录下日常的学习. 各类游戏中都大量运用到计时功能,不管是直接显示的在前端UI,还是后台运行. Unity中提供了Time类可以方便的进行时间上的获取,下面的例子中,我对其进行的简单的封装,能够方便的运用到各类型的游戏中. 1 public class ClockManagement : MonoBehaviour { 2 3 private float screenWidth; 4 private float screenHeight; 5