我使用的是Zedgraph,对于x轴,它们要求我们转换为OADate
。我正在绘制实时股票图表,我想显示最后60秒。
所以我使用zedGraphControl1.GraphPane.XAxis.Scale.Max
和zedGraphControl1.GraphPane.XAxis.Scale.Min
。对于最大值,我将其设置为最新时间,而最小值我计划设置为最新时间减去60秒(变量)。我将在时间跨度中存储60秒。但问题是,时间跨度没有函数toOADate
。
答案 0 :(得分:0)
实施自己的方法!
你需要知道的是 1天= 24小时 1小时= 60分钟 1分钟= 60秒 1秒= 1000毫秒
示例:让我说我有时间t = 456722622毫秒
struct TimeDetailed
{
public int millisec;
public int seconds;
public int minutes;
public int hours;
public int days;
};
static TimeDetailed tConverted;
int t = 456722622;
public void function(int a)
{
int d,h,m,s;
d=h=m=s=0;
while(a >= 86400000) // milliseconds per day
{
a -= 86400000;
d++;
}
while(a >= 3600000) // milliseconds per hour
{
a -= 3600000;
h++;
}
while(a >= 60000) // milliseconds per minute
{
a -= 60000;
m++;
}
while(a >= 1000) // milliseconds per second
{
a -= 1000;
s++;
}
tConverted.days = d;
tConverted.hours = h;
tConverted.minutes = m;
tConverted.seconds = s;
tConverted.millisec = a;
}
function(t);
输出是:
tConverted.days = 5
tConverted.hours = 6
tConverted.minutes = 52
tConverted.seconds = 2
tConverted.millisec = 622
虽然我没有测试这段代码,但你可以同样制作一个