请教动态数组问题(拜谢了)(50)

  • 主题发起人 主题发起人 xnfzy
  • 开始时间 开始时间
X

xnfzy

Unregistered / Unconfirmed
GUEST, unregistred user!
各位大侠,请教如下问题:#以下是现用的手写方法constzb :Array[145..289] of String=('00:00','00:10','00:20','00:30','00:40');{$R *.dfm}要实现的:zb :Array[变量1..变量2] of String=('00:00','00:10','00:30',..'23:50')其中('','','') 是一天的1440分钟,每10分钟一个值,也就是144个,按10累加!这个实现方法:var myDate : TDateTime; m: integer;begin // 初始化TDateTime变量 myDate := Date(); // 这个日期上加上10分钟 for m:= 0 to 1440 do begin if m mod 10 = 0 then begin memo1.Lines.Add(DateTimeToStr(IncMinute(myDate, m))); end; end;end;问题是如何把这144个值放入数组?然后实现从变量1到变量2,一一对应一个值? 实际上,变量值也就是鼠标的x坐标值!分多不了!如有解者,感激不尽!
 
请教高手指点啊!我是在stringgrid中,第一个非锁定的格子的坐标为left:145-289(right),第二格290-434,第三格为435-579,每格的宽度为定量144,鼠标移动对应一个时间点!00:00,00:10,00:20 ... 23:50,没有代码,给点思路也行啊!
 
顶一下!
 
你想干吗呢?鼠标点那个位置就显示那个时间? atime: array[0..144] of string;一个格子内移动鼠标显示同一个时间 atime[(x div 145) - 1]如果你想在一个格子中,随着鼠标的移动显示不同的时间,那么 atime[(x mod 145)]需要注意的是,上面的数组的长度是145,你需要在atime[144]上放个空串,因为(x mod 145)为144的位置是你stringgrid分割线的位置
 
放飞,您好!//定义constzb :Array[0..4] of String=('00:00','00:10','00:20','00:30','00:40');//Label1.Caption:=zb[x mod 145];//调用,这样是可以实现每移动时间点变化但string()里面的内容可以用:// 初始化TDateTime变量 myDate := Date(); // 这个日期上加上10分钟 for m:= 0 to 1440 do begin if m mod 10 = 0 then begin memo1.Lines.Add(DateTimeToStr(IncMinute(myDate, m))); end; end;来生成么!memo1.Lines.Add(DateTimeToStr(IncMinute(myDate, m)));内容就是我要的string()里面的内容!不然的话,我要手工添加string('00:00','00:10','00:20','00:30','00:40' ... '23:50') 共144个谢谢你的回复
 
var myDate : TDateTime; m: integer; showtime: array[1..144] of string; begin // 初始化TDateTime变量 myDate := Now; //取系统当前的时间 // 这个日期上加上10分钟 for m:= 0 to 1440 - 1 do begin if (m mod 10) = 0 then begin n:= n + 1; //全局 //showtime[n]:= FormatDateTime('hh:mm', IncMinute(myDate, m)); //只有时间 showtime[n]:= FormatDateTime('YYYY-MM-DD hh:mm:ss', IncMinute(myDate, m)); //日期和时间 memo1.Lines.Add(FormatDateTime('YYYY-MM-DD hh:mm:ss', IncMinute(myDate, m))+' n = '+ IntToStr(n)+ ' showtime['+IntToStr(n)+'] = '+ showtime[n]); if n = 144 then n:= 0; end; end;end;然后将自己的showtime数组想取哪个放到stringgrid里面就取哪个.取完在自己规则好的stringgrid位置里面.
 
楼主,你不会赋值都不会吧,楼上都告诉你怎么赋值了另外,你干吗要循环1440次啊n := 0;myDate := Date;for i := 0 to 144 - 1 dobegin zh[n] := FormatDateTime('hh:mm', IncMinute(myDate, n * 10));end;
 
后退
顶部