使用 Rad Studio 10.3
我正在基于 FireDAC 查询在运行时创建 TExpander。但是,我在将标签的父级设置为我刚刚创建的扩展器时遇到了问题。
我正在使用以下内容来创建组件
procedure TfrmMain.FormCreate(Sender: TObject);
var
i: integer;
begin
// Populate previous saved conversions stringgrid
FDQuery1.SQL.Clear;
FDQuery1.Close;
FDQuery1.SQL.Add('SELECT convert from conversions');
FDQuery1.Open;
i := 1;
while not FDQuery1.Eof do
begin
// Create Expanders here to display database query to user
exp := TExpander.Create(Self);
exp.Parent := layoutDBDisplay;
exp.Align := TAlignLayout.Top;
exp.Name := 'dbExp' + i.ToString;
exp.Height := 100;
exp.TextSettings.Font.Size := 14;
exp.TextSettings.Font.Style := [TFontStyle.fsBold];
// Create TLabel inside of above expander
lab := TLabel.Create(Self);
lab.Parent := TExpander;
lab.Align := TAlignLayout.Top;
lab.Name := 'dbResLabel' + i.ToString;
inc(i);
FDQuery1.Next;
end;
FDQuery1.Close;
end;
问题在于这一行
lab.Parent := expName;
显然,由于以下原因,上述内容无法编译
[dcc32 Error] frmConverter.pas(266): E2010 Incompatible types: 'TFmxObject' and 'class of TExpander'
有没有简单的解决方案?
你的线路
lab.Parent := TExpander;
应该
lab.Parent := Exp;
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句