具体说就是要循环通知一个用户表中的用户,我把表中当前记录的各属性值读到窗体上的EDIT中,然后调用一个电话通知的procedure(calluser),再使表的指针指向下一条记录。但是这样做不行,还在通知第一个用户时窗体上的EDIT显示的已经是最后一条记录的各属性值,该怎么处理呢?
代码如下:
procedure TForm7.Button1Click(Sender: TObject);
begin
with adotable1 do
begin
disablecontrols;
try
first;
while not EOF do
begin
edit1.Text:=fieldbyname('儿童编号').AsString;
edit2.Text:=fieldbyname('儿童名').AsString;
edit3.Text:=fieldbyname('家长名').AsString;
edit4.Text:=fieldbyname('主要电话').AsString;
dialnum:=edit4.Text;
calluser;
Next;
end;
finally
enablecontrols;
end;
end;
end;
procedure CallUser();
var i:Integer;
begin
Form7.panel5.Caption:='拨号中...';
TV_SetDTMFSendSpeed(i,2);
ptmp:=pchar(Dialnum);
TV_StartDial(i,ptmp);
cs[i]:=WS_DIALING;
end;
注:TV_SetDTMFSendSpeed(i,2)、TV_StartDial(i,ptmp)是两个语音卡的库函数,作用分别是设置接收DTMF码的速度和开始拨号