Home > Net >  Showing first and last name in statusbar
Showing first and last name in statusbar

Time:08-24

I am a beginner in Delphi, and I would like to show first and last name in the StatusBar instead of the username.

Here is my code:

procedure TForm1.Button1Click(Sender: TObject);
begin
  with Login do
  begin
    active := false;
    sql.Clear;
    sql.Text := 'SELECT korisnicko, lozinka from operateri where korisnicko = '   quotedstr(edtkorisnicko.Text)   ' and lozinka = '   quotedstr(edtlozinka.Text);
    active := true;

    if Login.RecordCount <> 0 then
    begin
      form1.Hide();
      form2.statusbar1.panels[0].text:= 'Korisnik: '   edtKorisnicko.Text;
      form2.showmodal();
    end
    else
    begin
      ShowMessage('Korisničko ime ili lozinka nisu validni!');
    end;
  end;

"Korisnicko or edtKorisnicko" standing for "username".

CodePudding user response:

Given that your own answer shows the desired name is stored in the ime_prezime field of the database record you are searching for, you can simply retrieve that field in the very same SELECT query that is searching for the username/password, there is no need to run a 2nd query to get that field value separately, eg:

procedure TForm1.Button1Click(Sender: TObject);
begin
  Login.Close;
  Login.SQL.Text := 'SELECT ime_prezime from operateri where korisnicko = '   QuotedStr(edtkorisnicko.Text)   ' and lozinka = '   QuotedStr(edtlozinka.Text);
  Login.Open;
  Login.First;

  if not Login.Eof then
  begin
    Form1.Hide();
    Form2.StatusBar1.Panels[0].Text := 'Korisnik: '   Login.FieldByName('ime_prezime').AsString;
    Form2.ShowModal();
  end
  else
  begin
    ShowMessage('Korisničko ime ili lozinka nisu validni!');
  end;
end;

CodePudding user response:

There is answer. :)

procedure TForm1.Button1Click(Sender: TObject);
begin
  with Login do
  begin
    active := false;
    sql.Clear;
    sql.Text := 'SELECT korisnicko, lozinka from operateri where korisnicko = '   quotedstr(edtkorisnicko.Text)   ' and lozinka = '   quotedstr(edtlozinka.Text);
    active := true;

    if Login.RecordCount <> 0 then
    begin
      active := false;
      sql.Clear;
      sql.Text := 'SELECT ime_prezime FROM operateri WHERE korisnicko = '   quotedstr(edtkorisnicko.Text);
      active := true;
      form1.Hide();
      form2.statusbar1.panels[0].text := 'Korisnik: '   Login.FieldByName('ime_prezime').Text;
      form2.showmodal();
    end
    else
    begin
      ShowMessage('Korisničko ime ili lozinka nisu validni!');
    end;
  end;
  • Related