计算同一事件发生两次的时间间隔 比如,单击一次Button,获得一个时刻,再次单击这个按钮,再次获得一个时刻,怎么计算两次单击事件的时间间隔,求高手指导。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 加个标记符int i=0,第一次按键后记1,第二次记回0 傳二個時間進去private string DateDiff(DateTime DateTime1,DateTime DateTime2){string dateDiff=null;try{TimeSpan ts1=new TimeSpan(DateTime1.Ticks);TimeSpan ts2=new TimeSpan(DateTime2.Ticks);TimeSpan ts=ts1.Subtract(ts2).Duration();dateDiff=ts.Days.ToString()+"天"+ts.Hours.ToString()+"小时"+ts.Minutes.ToString()+"分钟"+ts.Seconds.ToString()+"秒";}catch{}return dateDiff;} 写个 arraylist,设置为公有,静态,全局 以 时间为value每触发一次 add一次.这样,每次触发时间的时间节点都被记录在案. 你想怎么用这个arraylist都行 把第一次的时间记录在viewstate里面 添加一个Label空间 内容为空 且隐藏控件 再添加一个按钮 完成单击事件private void button3_Click(object sender, RoutedEventArgs e) { DateTime time = DateTime.Now; DateTime lastTime; TimeSpan span; //时间间隔 if (label1.Content != null && label1.Content.ToString() != "") { lastTime = Convert.ToDateTime(label1.Content.ToString()); span = time - lastTime; MessageBox.Show("与上次的时间间隔是:" + span.Seconds.ToString() + "秒"); //span.Minutes表示相差的分钟 还有其它格式可以自己去替换 } label1.Content = time; } int start=Environment.TickCount;//Your methodint end=Environment.TickCount-start;//end 为你的方法执行的毫秒数。 其实.net里有个类:Stopwatch (命名空间:System.Diagnostics) Stopwatch sw = new Stopwatch(); sw.Start(); //开始计时 ........ ........ sw.Stop(); //停止计时 string aa=sw.Elapsed.ToString(); //时间间隔 DateTime checkDataTime;private void button1_Click(object sender, EventArgs e) { DateTime dt = DateTime.Now; if (checkDataTime != null && checkDataTime.AddSeconds(4) > dt) { MessageBox.Show("小于四秒不能点"); } else { checkDataTime = dt; } } 无法序列化会话状态 我要统计按层次分组的数据,要怎么实现? 如何使DataGridView不显示空行? 如何实现这种显示,给高分啦 C#:类,抽象,虚拟,重载。。。。。。 求高手赐教 C# 类的转换 如何把指针传入DLL中? 在datagrid中将数据修改后,如何用webform上的按钮来保存到数据库中? 关于arraylist请指教 FCKEditor如何过滤脚本? C# winform 能不能写个方法动态创建控件 然后调用这个方法
{
string dateDiff=null;
try
{
TimeSpan ts1=new TimeSpan(DateTime1.Ticks);
TimeSpan ts2=new TimeSpan(DateTime2.Ticks);
TimeSpan ts=ts1.Subtract(ts2).Duration();
dateDiff=ts.Days.ToString()+"天"
+ts.Hours.ToString()+"小时"
+ts.Minutes.ToString()+"分钟"
+ts.Seconds.ToString()+"秒";
}
catch
{}
return dateDiff;
}
再添加一个按钮 完成单击事件
private void button3_Click(object sender, RoutedEventArgs e)
{
DateTime time = DateTime.Now;
DateTime lastTime;
TimeSpan span; //时间间隔
if (label1.Content != null && label1.Content.ToString() != "")
{
lastTime = Convert.ToDateTime(label1.Content.ToString());
span = time - lastTime;
MessageBox.Show("与上次的时间间隔是:" + span.Seconds.ToString() + "秒");
//span.Minutes表示相差的分钟 还有其它格式可以自己去替换
}
label1.Content = time;
}
int start=Environment.TickCount;
//Your method
int end=Environment.TickCount-start;
//end 为你的方法执行的毫秒数。
sw.Start(); //开始计时
........
........
sw.Stop(); //停止计时 string aa=sw.Elapsed.ToString(); //时间间隔
private void button1_Click(object sender, EventArgs e)
{
DateTime dt = DateTime.Now;
if (checkDataTime != null && checkDataTime.AddSeconds(4) > dt)
{
MessageBox.Show("小于四秒不能点");
}
else
{
checkDataTime = dt;
}
}