开发者

How to auto fill in editlabel field with specific database row delphi

Hi there I have a problem I need to auto fill in information from the database, but if i do it like this:

       leemail.text             := dm.atInlog['email'];
       lenaam.text              := dm.atInlog['naam'];
       leAdres.text             := dm.atInlog['adres'];
       lePostcode.text          := dm.atInlog['postcode'];
       leTelefoonnummer.text    := dm.atInlog['telefoon'];
       leWoonplaats.Text        := dm.atInlog['Woonplaats']

It just takes the first row. I want a specific row. I can make it work with a button like this:

procedure TfmKlant.BTGegevensClick(Sender: TObject);
begin
//vraag gegevens van开发者_StackOverflow社区 gebruiker op
    dm.atInlog.Open;
    while (not gevonden) and (not dm.atInlog.eof) do
    begin
        if dm.atInlog['email'] = fminloggen.inlognaam
      then
      begin
//     plaats gegevens in de textboxen
       gevonden := true;
       leemail.text             := dm.atInlog['email'];
       lenaam.text              := dm.atInlog['naam'];
       leAdres.text             := dm.atInlog['adres'];
       lePostcode.text          := dm.atInlog['postcode'];
       leTelefoonnummer.text    := dm.atInlog['telefoon'];
       leWoonplaats.Text        := dm.atInlog['Woonplaats']
      end
        else dm.atInlog.Next;
end;

But It does not do this in create form. How can I auto fill in the labeledit with the requested data?

thanks in advance


You could use TDataSet.Locate or Lookup:

type
  TfmKlant = class(TForm)
  // ... other declarations
  private
    procedure ShowData(p_Email: string);
  end;


...
    procedure TfmKlant.FormCreate(Sender: TObject);
    begin
      // assuming the data set is already open, and fminloggen.inlognaaem is already set
      if dm.atInLog.Locate('email', fminloggen.inlognaam, []) then
      begin
       ShowData(fminloggen.inloognam);
      end;
    end;

    procedure TfmKlant.ShowData(p_Email: string);
    begin
           gevonden := true;
           leemail.text             := dm.atInlog['email'];
           lenaam.text              := dm.atInlog['naam'];
           leAdres.text             := dm.atInlog['adres'];
           lePostcode.text          := dm.atInlog['postcode'];
           leTelefoonnummer.text    := dm.atInlog['telefoon'];
           leWoonplaats.Text        := dm.atInlog['Woonplaats']
    end;
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜