Delphi 如何从PageControl中的窗体获取值
下面是我如何创建我的页面控件Delphi 如何从PageControl中的窗体获取值,delphi,delphi-10.2-tokyo,Delphi,Delphi 10.2 Tokyo,下面是我如何创建我的页面控件 PageCtrlSub := TPageControl.Create(Self); PageCtrlSub.Parent := GroupSub; PageCtrlSub.Align := alClient; SubFormCnt := 0; TblOdSub.First; while not TblOdSub.Eof do begin SubPartNo := TblOdSub.FieldByName('sub_part_no').AsString;
PageCtrlSub := TPageControl.Create(Self);
PageCtrlSub.Parent := GroupSub;
PageCtrlSub.Align := alClient;
SubFormCnt := 0;
TblOdSub.First;
while not TblOdSub.Eof do
begin
SubPartNo := TblOdSub.FieldByName('sub_part_no').AsString;
AddNewSubTab(SubPartNo,Prc1Rs);
TblOdSub.Next;
end;
下面是我如何在TabSheet上创建我的TabSheet和表单
procedure TFrmSub.AddNewSubTab(PartNo : String; PrcRs : TPriceRec);
var
i : Integer;
begin
inc(SubFormCnt);
TabSheet := TTabSheet.Create(PageCtrlSub);
TabSheet.Caption := 'Sub '+ intToStr(SubFormCnt);
TabSheet.PageControl := PageCtrlSub;
Form := TFrmSubExchange.Create(Self);
Form.Name := 'SForm' + IntToStr(SubFormCnt);
Form.Parent := TabSheet;
for i := 0 to Componentcount-1 do
begin
if (Components[i] is TFrmSubExchange) and (Components[i].Name = 'SForm' + IntToStr(SubFormCnt)) then
TFrmSubExchange(Components[i]).DataChangedSub(PartNo, PrcRs);
end;
Form.Show;
end;
我在创建的每个表单上都有一个t选项。当用户更改选项卡并按下按钮时,我需要知道活动选项卡窗体上tcoption.caption属性中存储的文本?
提前感谢没有看到
TFrmSubExchange
的DFM,这只是一个猜测,但您可以尝试以下方法:
procedure TFrmSub.SomeButtonClick(Sender: TObject);
var
s: string;
begin
s := (PageCtrlSub.ActivePage.Controls[0] as TFrmSubExchange).Caption1.Caption;
...
end;
这就是我需要的,非常感谢