Thanks Michael, I will do the same. And the use of colors is very nice.

mvg
Frans van Leeuwen
M 06-51695390

Op 09-03-2016 om 20:59 schreef Michael Van Canneyt:


On Wed, 9 Mar 2016, Frans wrote:

Hi

I use Lazarus 1.6 on Windows 7.
I've used lazdatadesktop to change the Displaylabel of the DB fields. In a DBGrid that new names popup as the column names. But in a form with TDBEdit fields I can't use a TDBLabel that automatically takes the name from the associated Control as the caption. Instead, I placed TLabel components and made the following method:

procedure TMyForm.FormShow(Sender: TObject);
var
 l: TLabel;
begin
 for TComponent(l) in Self do
 begin
   if (l is TLabel) and (l.FocusControl is TDBEdit) then
     l.Caption := TDBEdit(l.FocusControl).Field.DisplayLabel;
   if (l is TLabel) and (l.FocusControl is TDBLookupComboBox) then
     l.Caption := TDBLookupComboBox(l.FocusControl).Field.DisplayLabel;
 end;
end;

It works. But still I wonder, is there a another way? I've tried TDBText but that shows th field value, not the DisplayLabel.

There is no standard control for it. But it should in fact be easy to add to
the LCL.

I have a very large application in which I do the same, but I had to develop
my own TLabel subclass for this. (It also switches color when the field is
required etc.)

Michael.

--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus



--
_______________________________________________
Lazarus mailing list
Lazarus@lists.lazarus.freepascal.org
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to