检查ADOTable字段值时出现问题

时间:2011-05-23 20:24:45

标签: database delphi tadotable

我还有Delphi的另一个问题。我编写了一段代码,用于检查数据库表中的字段是否等于0,如果为真,则更改某个按钮的字体颜色和标题。它在创建主窗体时运行。但是,当我运行程序时,没有任何反应 - 程序没有出现,我没有错误。我真的不知道出了什么问题,似乎是某种无限循环。

以下是代码:

procedure TForm1.FormCreate(Sender: TObject);
begin
ADOTableStorage.First;
while not ADOTableStorage.Eof do
    If ADOTableStorage.FieldByName('amount').AsInteger = 0 then
        begin
        btStorage.Font.Color := clRed;
        btStorage.Caption := 'Some items are out of stock!';
        Break;
        end;
    ADOTableStorage.Next;
end;

注意:ADOTableStorage表位于Master-Detail连接的详细信息表中。

谢谢!

1 个答案:

答案 0 :(得分:3)

我猜你在while循环中缺少一个开始/结束。试试这个。

procedure TForm1.FormCreate(Sender: TObject);
begin
  ADOTableStorage.First;
  while not ADOTableStorage.Eof do
  begin
    If ADOTableStorage.FieldByName('amount').AsInteger = 0 then
    begin
        btStorage.Font.Color := clRed;
        btStorage.Caption := 'Some items are out of stock!';
        Break;
    end;
    ADOTableStorage.Next;
  end;
end;