Entwickler-Ecke

Datenbanken - Alle Zeilen in einem DBGrid selektieren


juergen - Mi 14.07.04 15:09
Titel: Alle Zeilen in einem DBGrid selektieren
Hallo,

wie kann ich alle Zeilen in einem DBGrid selektieren ?
Durch "Knopfdruck" sollen alle Zeilen und Spalten selektiert sein.

DANKE

juergen


DelphiFreund - Mi 14.07.04 15:14

Ich bin mir nicht sicher, aber gibt es nicht eine Einstellung wie 'MultiSelect' oder so?


juergen - Mi 14.07.04 15:20

Den gibt es,
aber damit bestimmst du ja nur ob prinzipiell mehere Datensätze selektiert werden können.


DelphiFreund - Mi 14.07.04 15:32

Tut mir leid, dann kann ich dir wohl nicht helfen :(


CenBells - Do 15.07.04 12:37

HAllo,

da TDBGrid in ein TStringgrid gecastet werden kann, schau dir mal die Eigenschaft SelectionRange oder so ähnlich des Stringgrids an.

Gruß
Ken


JoelH - Di 30.11.04 10:25
Titel: hmm,
Auch wenn die Antwort relativ kommt, ich hatte dass selbe Problem und hab diese Lösung gefunden :



Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
procedure Tform.Select_All_Rows;
begin
  if query.Active then
  begin
    query.First;
    while not(query.Eof) do
    begin
      dbgrid.SelectedRows.CurrentRowSelected := TRUE;
      query.Next;
    end;
    Application.ProcessMessages;
  end;
end;


query ist eine TQuery Komponente DBGrid dei TDBGrid Komponente. Du muss alle rows durchlaufen. Zum Unselecten dasselbe nur TRUE durch FALSE ersetzen.


BPK - Do 19.05.05 10:12


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
function GridSelectAll(Grid:TDBGrid):LongInt;
begin
  Result:=0;
  Grid.SelectedRows.Clear;
  with Grid.DataSource.DataSet do begin
    First;
    DisableControls;
    try
      while not EOF do begin
        Grid.SelectedRows.CurrentRowSelected:=True;
        Inc(Result);
        Next;
      end;
    finally
      EnableControls;
    end;
  end;
end;