Forum
Grundkurs
»Introduktion
»Snabbguide
»Komponenter
»Händelser
»Strängar
»Räkna med Delphi »Egna
typer
»Selektion
»Iteration
»Menyer
»Funktioner
»Arraystrukturer
Tips & Tricks
»Nya tips
»Blandat
»Databaser
»Filer
»Forms
»Grafik
»Internet
»Komponenter
»Matematik
»Multimedia
»Objekt/ActiveX
»Skrivare
»Strängar
»System
»Mest lästa tips
Artiklar
»Delphi och ADO
»Bygga en DLL
»Skapa en enkel rapport
»Hantera registret
»Enheter, units
»Klassen TCanvas
»Använd LookUp Controls
Nya
tips
Lägg
till tips
Delphilänkar
Gästbok
|
|
|
|
Sök efter ett värde i en TStrinGrid och markera hela raden.
|
Kategori: Komponenter
Inlagt: 2005-08-31
Läst: 1290
Inlagt av: Staffan Berg
|
Beskrivning |
Exemplet söker efter ett angivet värde i en TStringGrid och markerar hela raden där träffen finns. Se vidare de tyska kommentarerna i koden.
|
Kod |
function SeekRecord(Grid: TStringGrid; ColOrder: array of Integer; StrList: array of string ): Boolean; var I, J: Integer; begin Result := False; for I := 1 to Grid.RowCount - 1 do begin for J := Low(ColOrder) to High(ColOrder) do begin if (Grid.Cells[ColOrder[J], I] = StrList[J]) then Result := True else Result := False; if Result = False then Break; end; if Result = True then Break; end; if Result = True then Grid.Row := I else ShowMessage('Datensatz nicht gefunden!' + #13#13 + 'Record not Found!'); end; //Example procedure TForm1.Button1Click(Sender: TObject); begin //Suche Zeile nach Column 0 mit Suchbegriff SeekRecord(Grid, [0], ['Suchbegriff']); //Suche Zeile nach Column 0 und 1 mit Suchbegriffen 1 und 2 SeekRecord(Grid, [0, 1], ['Suchbegriff1', 'Suchbegriff2']); //Suche Zeile nach Column 1, 5 und 2 mit Suchbegriffen 1, 2 und 3 SeekRecord(Grid, [1, 5, 2], ['Suchbegriff1', 'Suchbegriff2', 'Suchbegriff3']); //usw. end;
|
|
|