PPT演讲计时器

下载

GitHub 源码地址

如果访问不到的话,可以从百度盘下载:

链接:https://pan.baidu.com/s/1bK4sug-eK85fmPgi9DzhcA
提取码:0vp3
文件:VB.Equal.Timer-VB计时器软件-绿色无残留

写在前面

转眼也工作了两年了,从大学毕业就再也没正经写过CSDN,到时工作以来的工作日志没有间断,甚至一开始连中午吃啥都记得明明白白,从今天开始希望经常搞点 “事情”,并且整理出来,看我都能编些什么软件。

1、奇葩的起因

计时器应用是在大学时做的,最后一次修改vb的源码是13年6月16日,做这个应用的原因是当时的课前演讲让我计时,我在对自己班同学轮番放水后,实在是无法拒绝其他班的同学的放水请求,所以就做了一个计时器,从此也把我从计时这件事情上解脱了下来……

2、简单的需求

软件最初设计的非常简单,因为需求就很简单:5分钟倒计时……
不过也就在那阶段,我也是不断地对其进行修改,前前后后居然修改出了64次版本,现在想想那时候也真是执着。

3、我觉得所谓的难点

当时对软件开发还是比较懵懂无知的,都是想一步是一步,再加上那时候重度强迫症,更是纠结,其实整个软件核心部分就是计时,如何计时准确是成功的关键,我也曾在网上找过其他计时软件,有的很明显就是……

Sleep(1000);

这样计时会有比较大的偏差、因为软件运行还有时间,再加上Sleep的时间,运行越久误差越大,我使用的是运行前和运行后的时间戳差的方式,来记录经过的时间,如下:

Private Sub Timer_F_Timer()
'这里获取当前的时间'
GetLocalTime t'如果当前时间比上次记录的时间大'
If t.wMilliseconds > time_mark_time Thentime_stepcha = t.wMilliseconds - time_mark_time
Else'这里处理用户人为修改日期时间,造成当前时间小于上次记录时间的情况'
End If'如果时间差比剩余时间大,就继续减'
If TIMEMS > time_stepcha ThenTIMEMS = TIMEMS - time_stepcha
Else'如果剩余时间小于时间差,那么就说明时间到了'
End If'这里可以进行时间的显示'
'这里记录一下当前时间,下次循环备用'
time_mark_time = t.wMilliseconds
End Sub

其实也并不复杂,这样就可以完美覆盖每一次循环,不会再出现Sleep那样的误差,至于循环时的时间显示,可以按照自己希望的格式来实现,刷新的频率可以控制循环的间隔,基本就OK了。
这个时间的算法后来我在一次考试项目中也用到了,不过是用JS实现的,也差不多,在文章最后附的源码里,有网页版的源码。

4、一些程序中的截图

主界面
主界面

选项菜单
选项菜单

软件说明
软件说明

请高人不吝赐教。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/544776.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2万字!66道并发面试题及答案

我花了点时间整理了一些多线程,并发相关的面试题,虽然不是很多,但是偶尔看看还是很有用的哦!话不多说,直接开整!01 什么是线程?线程是操作系统能够进⾏运算调度的最⼩单位,它被包含在…

25种代码坏味道总结+优化示例

前言什么样的代码是好代码呢?好的代码应该命名规范、可读性强、扩展性强、健壮性......而不好的代码又有哪些典型特征呢?这25种代码坏味道大家要注意啦1. Duplicated Code (重复代码)重复代码就是不同地点,有着相同的程…

滚动照片抽奖软件

CODE GitHub 源码 1、女友说很丑的一个软件 说个最近的事情,女友公司过年了要搞活动,需要个抽奖的环节,当时就问我能不能给做一个,正好我也没啥事儿,就在周末的时候用C#做了一个,虽然派上用场了&#xf…

11个小技巧,玩转Spring!

前言最近有些读者私信我说希望后面多分享spring方面的文章,这样能够在实际工作中派上用场。正好我对spring源码有过一定的研究,并结合我这几年实际的工作经验,把spring中我认为不错的知识点总结一下,希望对您有所帮助。一 如何获取…

synchronized 的超多干货!

synchronized 这个关键字的重要性不言而喻,几乎可以说是并发、多线程必须会问到的关键字了。synchronized 会涉及到锁、升级降级操作、锁的撤销、对象头等。所以理解 synchronized 非常重要,本篇文章就带你从 synchronized 的基本用法、再到 synchronize…

团队项目—第二阶段第三天

昨天:快捷键的设置已经实现了 今天:协助成员实现特色功能之一 问题:技术上遇到了困难,特色功能一直没太大的进展。网上相关资料不是那么多,我们无从下手。 有图有真相: 转载于:https://www.cnblogs.com/JJJ…

不重启JVM,替换掉已经加载的类,偷天换日?

来源 | 美团技术博客在遥远的希艾斯星球爪哇国塞沃城中,两名年轻的程序员正在为一件事情苦恼,程序出问题了,一时看不出问题出在哪里,于是有了以下对话:“Debug一下吧。”“线上机器,没开Debug端口。”“看日…

[nodejs] 利用openshift 撰寫應用喔

2019独角兽企业重金招聘Python工程师标准>>> 朋友某一天告訴我,可以利用openshift來架站,因為他架了幾個nodejs應用放在上面,我也來利用這個平台架看看,似乎因為英文不太行,搞很久啊!! 先來架一個看看,不過架好之後,可以有三個應用,每個應用有1G的空間,用完就沒啦~~…

详解4种经典的限流算法

最近,我们的业务系统引入了Guava的RateLimiter限流组件,它是基于令牌桶算法实现的,而令牌桶是非常经典的限流算法。本文将跟大家一起学习几种经典的限流算法。限流是什么?维基百科的概念如下:In computer networks, rate limiting is used t…

css clearfix_如何使用CSS清除浮点数(clearfix)?

css clearfixIntroduction: 介绍: Dealing with various elements on a website or web page can sometimes prove to create many problems hence one should be aware of many properties, tricks or ways to cope with those problems. We do not want our webs…

将你的Windows,快速打造成Docker工作站!

手里的macbook因为键盘问题返厂维修了,只好抱起了久违的Windows。首先面临的,就是Docker问题。docker好用,但安装麻烦,用起来也命令繁多。一个小白,如何打造舒适的docker环境,是一个非常有挑战的问题。本文…

漫画:什么是JVM的垃圾回收?

————— 第二天 —————————————————下面我们一起来研究这三个问题。问题1:哪些是需要回收的?首先我们需要知道如何哪些垃圾需要回收?判断对象是否需要回收有两种算法。一种是引用计数算法、一种是可达性分析算法。引用计…

48张图|手摸手教你性能监控、压测和调优

本文主要内容一、何为压力测试1.1、 大白话解释性能压测是什么:就是考察当前软件和硬件环境下,系统所能承受的最大负荷,并帮助找出系统的瓶颈所在。性能压测的目的:为了系统在线上的处理能力和稳定性维持在一个标准范围内&#xf…

Java生成随机数的4种方式,以后就用它了!

作者 | 王磊来源 | Java中文社群(ID:javacn666)转载请联系授权(微信ID:GG_Stone)在 Java 中,生成随机数的场景有很多,所以本文我们就来盘点一下 4 种生成随机数的方式,以…

Everything是如何搜索的

写在前面 使用了Everything之后,一直对他的搜索速度感兴趣,在网上也看了很多对其原理的揭秘,终于有空找了个源码研究了一下,原理就是对NTFS的USN特性进行使用。 原理 详细解释我参照别人家的博客来一段: 当扇区的文…

漫话:如何给女朋友解释String对象是不可变的?

String的不变性String在Java中特别常用&#xff0c;相信很多人都看过他的源码&#xff0c;在JDK中&#xff0c;关于String的类声明是这样的&#xff1a;public final class String implements java.io.Serializable, Comparable<String>, CharSequence { }可以看到&#…

XenServer 6.5实战系列之十一:Install Update For XenServer 6.5

为了保证XenServer主机的安全及功能的更新&#xff0c;在企业环境中我们需要定期的到Citrix官网或通过XenCenter进行下载和更新。今天我们会从在线和离线两种不同的方法进行Update的安装。更新补丁之前请务必阅读对应Update的相关资料、注意事项和做好备份。1. 离线安装更新在…

机器学习 属性_属性关系文件格式| 机器学习

机器学习 属性Today, we will be looking at the use of attribute relation file format for machine learning in java and we would be writing a small java code to convert the popularly used .csv file format into the arff (Attribute relation file format). This f…

C#标记废弃方法

一、普通用法 在C#中&#xff0c;如果一个方法我们不再使用&#xff0c;我们可以将其标记为“废弃”的方法&#xff0c;只需要在方法前&#xff0c;加一个[Obsolete]即可&#xff1b; [Obsolete] public void BiuBiuBiu(){// 嘿嘿嘿 }废弃方法并非不能使用&#xff0c;而是在…

阿里二面一问MySQL就开始野了,抓着底层原理不撒手啊!

最近项目增加&#xff0c;缺人手&#xff0c;面试不少&#xff0c;但匹配的人少的可怜。跟其他组的面试官聊&#xff0c;他也抱怨了一番&#xff0c;说候选人有点儿花拳绣腿&#xff0c;回答问题不落地&#xff0c;拿面试最常问的MySQL来说&#xff0c;并不只是懂“增删改查”、…