Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi in einem DBGrid ins bestimmte Feld springen [gelöst] (https://www.delphipraxis.net/47582-einem-dbgrid-ins-bestimmte-feld-springen-%5Bgeloest%5D.html)

sniffy 13. Jun 2005 14:31

Datenbank: MySQL • Zugriff über: ODBC

in einem DBGrid ins bestimmte Feld springen [gelöst]
 
Hi!
Wie kann ich bei einem DBGrid in ein bestimmtes Feld springen?

Mit 'Locate' durchsuche ich mein DBGrid nach einem bestimmten String und wenn der String in einem Feld
gefunden wurde soll es Fokusiert werden. Kein Plan wie ich das anstellen soll.

Für Antorten wäre ich dankbar!

Gruss
sniffy :wink:

sniffy 14. Jun 2005 07:54

Re: in einem DBGrid ins bestimmte Feld springen
 
Weiss keiner ne Antwort? :(

Sharky 14. Jun 2005 08:02

Re: in einem DBGrid ins bestimmte Feld springen
 
Hai sniffy,

durchsuchst Du mit Locate mehrere Felder oder immer nur eines?

sniffy 14. Jun 2005 08:06

Re: in einem DBGrid ins bestimmte Feld springen
 
Ich mach es so:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
     if Query1.Locate(ComboBox3.Text,Edit1.Text,[loPartialKey,loCaseInsensitive   ]) then
        ShowMessage(Edit1.Text + ' gefunden :-) !')
     else
         ShowMessage(Edit1.Text + ' nicht gefunden :-( !');
end;

Jasocul 14. Jun 2005 08:08

Re: in einem DBGrid ins bestimmte Feld springen
 
Da du die Felder durchsuchst, müsstest du auch wissen in welchem Feld du ein Ergebnis gefunden hast.
Dein DBGrid kennt die Eigenschaft "SelectedField". imo ist das nicht ReadOnly. Du kannst SeletedField also auch setzen.

Sharky 14. Jun 2005 08:09

Re: in einem DBGrid ins bestimmte Feld springen
 
Sollte so gehen ;-)


Zitat:

Zitat von sniffy
Ich mach es so:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
  feldname : string;
  suchwort : string;
begin
  feldname := ComboBox3.Text;
  suchwort := Edit1.Text;
  if DBGrid1.DataSource.DataSet.Locate(feldname,suchwort,[loPartialKey,loCaseInsensitive]) then
  begin
    DBGrid1.SelectedField := DBGrid1.DataSource.DataSet.FieldByName(feldname);
    DBGrid1.SetFocus;
  end
  else
  begin
    ShowMessage(suchwort + ' nicht gefunden :-( !');
  end;
end;

sniffy 14. Jun 2005 08:53

Re: in einem DBGrid ins bestimmte Feld springen
 
Super, es funktioniert!
Vielen, vielen Dank!!!
:mrgreen: :P :-D :thumb:


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:18 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz