Hallo zusamm,
ich hab da ein Problem, ich schiebs zu 50% darauf das es schon Freitag nachmittag ist und vermutlich wer auf der Leitung steht.
Also: Ich hab ein cxGrid mit 3 Spalten und möchte eigentlich nicht mehr tun, als die Daten der ausgewählten Zeile auslesen, aber irgendwie check ichs nicht und die
OH hilft auch nicht so wirklich.
Delphi-Quellcode:
procedure TfrmDiagnose.tvTeileCellClick(Sender: TcxCustomGridTableView;
ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton;
AShift: TShiftState; var AHandled: Boolean);
var
iRecord: integer;
tRecord: TcxCustomGridRecord;
begin
if(AButton <> mbLeft) then
exit;
tRecord := tvTeile.Controller.FocusedRecord;
edtArtNr.Text := tRecord.DisplayTexts[0];
edtBezeichnung.Text := tRecord.DisplayTexts[1]; //* Fehler
edtArtPreis.Text := tRecord.DisplayTexts[2];
// Oder als Alternative, gibt ja mehrere Wege...
iRecord := ACellViewInfo.GridRecord.RecordIndex; // oder tvTeile.DataController.FocusedRecordIndex;
edtArtNr.Text := tvTeile.DataController.Values[iRecord, 0];
edtBezeichnung.Text := tvTeile.DataController.Values[iRecord, 1]; //* Fehler
edtArtPreis.Text := tvTeile.DataController.Values[iRecord, 2];
end;
Bei (* Fehler) kommt "Record Index out of range"...
Wer weiß Rat?