Текущий архив: 2004.06.13;
Скачать: CL | DM;
ВнизКак получить значение записи в таблице, на которой стоит курсор? Найти похожие ветки
← →
nitro (2004-05-24 10:12) [0]Гуру, подскажите, есть Table, есть DBgrid. Курсор стоит на некоторой записи. Как получить это значение?
← →
ega23 © (2004-05-24 10:15) [1]FieldByName
← →
Sergey (2004-05-24 13:16) [2]Судя по вопросу ты такойже новичок как и я
Получить значение текущей записи можно след. образом
A := Table1Field1.Value;
A := Table1.FieldByName("Field1").Value;
A := Table1.FieldByName("Field1").AsString; // AsInteger, AsFloat и т.д.
A := Table1.FieldValues["Field1"];
A := Table1.["Field1"];
A := Table1.Fields.Fields[1].Value;
A := Table1.Fields.Fields[1].AsString; // AsInteger, AsFloat
Я обычно пользуюсь 3 вариантом. Заместо А может стоять например Label1.Caption
← →
Соловьев © (2004-05-24 13:44) [3]Логичнее было бы использовать DataSource грида:
Label.Caption := Grid.DataSource.DataSet.FieldbyName("field1").AsString;
← →
bushmen © (2004-05-24 13:57) [4]>Соловьев © (24.05.04 13:44) [3]
Чем логичнее ?
← →
Соловьев © (2004-05-24 14:04) [5]
> [4] bushmen © (24.05.04 13:57)
так как название Table может поменяться.
Хотя, тут наверное еще логичнее было бы обработать событие у Набора данных OnAfterScroll и там заполнить нужные переменные. :)
← →
sniknik © (2004-05-24 14:10) [6]еще логичнее использовать события которые меняют это значение, т.е. если он стоял стоял, а потом вдруг раз и перевстал на другую запись, а у нас сразу свежее значение.
к примеру
procedure TForm1.DBGrid2ColEnter(Sender: TObject);
begin
Label1.Caption:= TDBGrid(Sender).SelectedField.AsString;
end;
procedure TForm1.ClientDataSet1AfterScroll(DataSet: TDataSet);
begin
DBGrid2ColEnter(DBGrid2);
end;
Страницы: 1 вся ветка
Текущий архив: 2004.06.13;
Скачать: CL | DM;
Память: 0.45 MB
Время: 0.024 c