1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.Windows;
  7. using System.Windows.Controls;
  8. using System.Windows.Data;
  9. using System.Windows.Documents;
  10. using System.Windows.Input;
  11. using System.Windows.Media;
  12. using System.Windows.Media.Imaging;
  13. using System.Windows.Navigation;
  14. using System.Windows.Shapes;
  15. using System.Windows.Threading;
  16. using System.IO;
  17. namespace TimeUpGoHome
  18. {
  19. /// <summary>
  20. /// MainWindow.xaml 的交互逻辑
  21. /// </summary>
  22. public partial class MainWindow : Window
  23. {
  24. private string shouldGoHomeTime = "18:15";
  25. private string trueGoHomeTime = "";
  26. private DispatcherTimer ShowTimer;
  27. public MainWindow()
  28. {
  29. InitializeComponent();
  30. ShowTimer = new System.Windows.Threading.DispatcherTimer();
  31. ShowTimer.Tick += new EventHandler(ShowCurTimer);//起个Timer一直获取当前时间
  32. ShowTimer.Interval = new TimeSpan(0, 0, 0, 1, 0);
  33. ShowTimer.Start();
  34. this.MyText.Text = "";
  35. }
  36. public void ShowCurTimer(object sender, EventArgs e)
  37. {
  38. //"星期"+DateTime.Now.DayOfWeek.ToString(("d"))
  39. //获得星期几
  40. // this.Tt2.Text = DateTime.Now.ToString("dddd", new System.Globalization.CultureInfo("zh-cn"));
  41. //his.Tt.Text += " ";
  42. //获得年月日
  43. this.Tt2.Text = DateTime.Now.ToString("yyyy年MM月dd日"); //yyyy年MM月dd日
  44. // this.Tt.Text += " ";
  45. //获得时分
  46. this.Tt.Text = DateTime.Now.ToString("HH:mm");
  47. //System.Diagnostics.Debug.Print("this.ShowCurrentTime {0}", this.ShowCurrentTime);
  48. }
  49. private int[] GetHourAndMin(string _timer){
  50. int n = int.Parse(_timer.Substring(0, 2));
  51. int m = int.Parse(_timer.Substring(3,2));
  52. int[] to_back = new int[] { n,m};
  53. return to_back;
  54. }
  55. private int[] GetRemainHourAndMin(int smallMins1,int bigMins2){
  56. int remainMins= bigMins2-smallMins1;
  57. int remainHours=remainMins/60;
  58. int remainRemainMins=remainMins%60;
  59. int[] to_back=new int[]{remainHours,remainRemainMins};
  60. return to_back;
  61. }
  62. private int GetMins(int[] timeTable)
  63. {
  64. return timeTable[0] * 60 + timeTable[1];
  65. }
  66. private void Button_Click(object sender, RoutedEventArgs e)
  67. {
  68. string today_date = this.Tt2.Text;
  69. string trueBackHomeTime = this.Tt.Text;
  70. int[] shouldBackTimeTable = GetHourAndMin(shouldGoHomeTime);
  71. int[] trueBackTimeTable = GetHourAndMin(trueBackHomeTime);
  72. int shouldMins=GetMins(shouldBackTimeTable);
  73. int trueMins=GetMins(trueBackTimeTable);
  74. if (trueMins < shouldMins)
  75. {
  76. this.MyText.Text="时间还没到!!";
  77. }
  78. else
  79. {
  80. this.MyText.Text="";
  81. int[] remainTimes = GetRemainHourAndMin(shouldMins, trueMins);
  82. using
  83. (StreamWriter iFile = new StreamWriter("D:/AfterWorkLog/workLog.txt", true))
  84. iFile.WriteLine("加班时间:" + today_date+" "+ shouldGoHomeTime + " 到 " + trueBackHomeTime + "; 累计:" +remainTimes[0]+"小时 "+remainTimes[1]+ " 分钟");
  85. App.Current.Shutdown();
  86. }
  87. }
  88. }
  89. }
 

加班计时App的更多相关文章

  1. 强制20天加班开发app后被集体解雇,象寻技术负责人公众号发文怒斥前领导

    5月16日下午三点,象寻官方公众号发了一篇<祝象寻早日倒闭的文章>文章,文章配一个竖中指的手势.如此劲爆的文章瞬间引爆了微信朋友圈,大家纷纷分享给好友和微信群,阅读量也达到了十万+. 当时 ...

  2. 蜗牛圈圈-时尚智能的运动计时App

    Duang! 各类运动爱好者的福音来啦! 蜗牛圈圈-最智能的圈速计时助手 扫描二维码下载体验 [产品简介] -蜗牛圈圈是一款专业的圈速计时工具,帮助您获得整个运动过程中的各项数据,保存记录,分享激情. ...

  3. C Primer Plus(第五版)7

    第 7 章 C 控制语句:分支和跳转 在本章中你将学习下列内容: · 关键字:if(如果),else(否则),switch(切换),continue(继续),break(中断), case(情况),d ...

  4. node.js报错throw err; // Rethrow non-MySQL errors e:\serverTest\node_modules\mysql\lib\protocol\Parser.js:79 解决方法

    今天在用node+angular做后台时,需要使用session保存登陆状态的时候,遇到了此问题,问题直译为非mysql问题,我也在后台取到的登陆用户名和密码,确实不是数据库问题.最后发现在使用ses ...

  5. 近期热门微信小程序demo源码下载汇总

    近期微信小程序demo源码下载汇总,乃小程序学习分析必备素材!点击标题即可下载: 即速应用首发!原创!电商商场Demo 优质微信小程序推荐 -秀人美女图 图片下载.滑动翻页 微信小程序 - 新词 GE ...

  6. Prism 4 文档 ---第7章 组成用户界面

    一个应用程序的用户界面(UI)可以通用以下几种模式之一来构建: 窗体所需要所有的控件都包含在一个单独的XAML文件中,在设计时组合这个窗体. 窗体的逻辑区域被分割到单独的部分中,通常指哟过户控件.这些 ...

  7. .Net语言 APP开发平台——Smobiler学习日志:如何快速实现Timer计时功能

    最前面的话:Smobiler是一个在VS环境中使用.Net语言来开发APP的开发平台,也许比Xamarin更方便 一.目标样式 我们要实现上图中的效果,需要如下的操作: 1.从工具栏上的”Smobil ...

  8. 带你实现开发者头条APP(三) 首页实现

    title: 带你实现开发者头条APP(三) 首页实现 tags: 轮播广告,ViewPager切换,圆形图片 grammar_cjkRuby: true --- 一.前言 今天实现开发者头条APP的 ...

  9. 2016年我们重新思考移动互联网创业的风险, 微信还是APP?

    感觉这两年前端开发又火起来了,很多做内容创业和做微电商创业的人,往往都选择了运营微信号.对于做纯技术开发的人来说,一般是看不上微信号的,感觉没什么技术含量,或者说没什么技术壁垒.也有另一批人观点相反的 ...

随机推荐

  1. Attribute Routing

    Attribute Routing 系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 题外话:由于这个技术点是新学的,并不属于原系列,但借助了原系列 ...

  2. Hadoop作业提交之TaskTracker获取Task

    [Hadoop代码笔记]Hadoop作业提交之TaskTracker获取Task 一.概要描述 在上上一篇博文和上一篇博文中分别描述了jobTracker和其服务(功能)模块初始化完成后,接收JobC ...

  3. 一个Shell小脚本——旋转的斜杠

    话不多说,请从代码中寻找乐趣吧! #!/bin/bash #----中断计数器----# incr= #----旋转的斜杠----# spin="/-\|" echo -en &q ...

  4. Android开发效率的小技巧

    提高eclipse使用效率(二) 提高Android开发效率的小技巧   XML文件的代码提示 adt中也有xml文件的代码提示,为了让提示来的更加猛烈,我们还要设置一下 打开eclipse - Wi ...

  5. CKEditor4.x部署和配置

    CKEditor4.x && JSP 官网下载CKEditor,可选Basic, Standard, Full 解压放置其WebRoot下 JSP中引入以下文件: <script ...

  6. Mahout之(三)相似性度量

    User CF 和 Item CF 都依赖于相似度的计算,因为只有通过衡量用户之间或物品之间的相似度,才能找到用户的“邻居”,才能完成推荐.上文简单的介绍了相似性的计算,但不完全,下面就对常用的相似度 ...

  7. 安装Theano

    参考文档 http://deeplearning.net/software/theano/install_centos6.html#install-centos6 安装依赖库 sudo yum ins ...

  8. 使用传入的总记录数实现一条sql语句完成分页查询

    使用传入的总记录数实现一条sql语句完成分页查询     问题:在传统的分页查询的实现中不可避免的需要两条sql语句,一条用于查询数据一条用于查询总记录数.如下面的实际代码所示: Img1 当然如果使 ...

  9. 关于前端JS模块加载器实现的一些细节

    最近工作需要,实现一个特定环境的模块加载方案,实现过程中有一些技术细节不解,便参考 了一些项目的api设计约定与实现,记录下来备忘. 本文不探讨为什么实现模块化,以及模块化相关的规范,直接考虑一些技术 ...

  10. MSSQL Rebuild(重建)索引

    MSSQL Rebuild(重建)索引 前的项目是做数据库的归档,在每次archive后都需要对原数据库的索引进行rebuild,以减少索引碎片,于是乎就自己写了一段sql: DECLARE @tab ...