Zitat von
MondoShiva:
Delphi-Quellcode:
var
j: Integer;
i: Integer;
begin
for j:=0 to DBGrid1.colCount-1 do
begin
for i:=0 to DBGrid1.rowCount-1 do
begin
if pos(lowercase(SucheText.text),lowercase(DBGrid1.Cells[j,i]))>0 then
begin
DBGrid1.Row := i;
DBGrid1.Col := j;
UdbTable_Produkte.RecNo := i; // hier kannst du beispielsweise nur aus der tabelle produkte suchen
//jenachdem ob du table oder querry benutzt kannst das ja austauschen
ShowMessage(SucheText.Text+' wurde in Zeile '+intToStr(i)+ ' in Spalte ' + inttostr(j+1)+' gefunden');
end;
end;
end;
end;
hoffe das hilft dir ein wenig!
Musst es deinen wünschen nach umgestalten
So n ähnlichen Code Hatte ich auch schon ... nur dass n paar unklarheiten dabei sind ...
für mich sieht der code so aus ...
Delphi-Quellcode:
var
j: Integer;
i: Integer;
begin
for j:=0 to DBGrid1.colCount-1 do // Schleife beginnt bei null wobei der Endwert -1 ist, somit endlos läuft?
begin // Weil die schleife läuft ja nicht rückwärts oder sonstiges
for i:=0 to DBGrid1.rowCount-1 do // Gleiches "Problem" wie oben ^^
begin
if pos(lowercase(SucheText.text),lowercase(DBGrid1.Cells[j,i]))>0 then // Mit der Zeile kann ich gar nix anfangen, ich könnte mir jedoch denken dass Sie überprüft ob in der Zeile bzw. Spalte nach übereinstimmungen sucht
begin
DBGrid1.Row := i; // Wenn dies passiert, wird die Zeile markiert
DBGrid1.Col := j; // Und die dazugehörige spalte
UdbTable_Produkte.RecNo := i; // hier kannst du beispielsweise nur aus der tabelle produkte suchen
//jenachdem ob du table oder querry benutzt kannst das ja austauschen
// Was macht RecNo?
ShowMessage(SucheText.Text+' wurde in Zeile '+intToStr(i)+ ' in Spalte ' + inttostr(j+1)+' gefunden');
end;
end;
end;
end;
Versteh ich den Quellcode bis dahin richtig?
Danke für eure Geduld