现在从ADOQuery1中读取一个时间点,当系统时间到达这个时间点时,触发一个事件,用timer来实现,间隔时间为1000ms
procedure TForm1.Timer1Timer(Sender: TObject);
begin
dtpShfst1 := Trim(ADOQuery1.Fields[3].AsString); //单步运行没问题,读出时间例如'16:00:00'
s:=FormatDateTime('tt',now);
if s = dtpShfst1 then
begin
//事件
end;
end;这样不行啊,事件没有被执行。procedure TForm1.Timer1Timer(Sender: TObject);
begin
dtpShfst1 := Trim(ADOQuery1.Fields[3].AsString);
if dtpShfst1 = FormatDateTime('tt',now) then
begin
//事件
end;
end;这样更不行,单步运行到('tt',now)那里提示inaccessible value。
各位我错在哪里啊~
procedure TForm1.Timer1Timer(Sender: TObject);
begin
dtpShfst1 := Trim(ADOQuery1.Fields[3].AsString); //单步运行没问题,读出时间例如'16:00:00'
s:=FormatDateTime('tt',now);
if s = dtpShfst1 then
begin
//事件
end;
end;这样不行啊,事件没有被执行。procedure TForm1.Timer1Timer(Sender: TObject);
begin
dtpShfst1 := Trim(ADOQuery1.Fields[3].AsString);
if dtpShfst1 = FormatDateTime('tt',now) then
begin
//事件
end;
end;这样更不行,单步运行到('tt',now)那里提示inaccessible value。
各位我错在哪里啊~
2、不要判断相等,判断now>'16:00:00'
begin
label1.Caption:=datetimetostr(now);
if formatdatetime('hh:nn:ss',now)=edit1.Text then
memo1.Lines.Add('比较相等了');
end;