Проблема с проверкой значений полей ADOTable
У меня есть еще одна проблема с 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 ответ
Решение
Я предполагаю, что вы пропускаете начало / конец цикла 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;