我在RunTime中动态创建了标签页,并使用以下代码在其中放置了一个框架:
procedure TForm1.Button2Click(Sender: TObject);
var
TabSheetG: TTabSheet;
begin
TabSheetG := TTabSheet.Create(PageControl1);
TabSheetG.Caption := 'Tab Sheet green ';
TabSheetG.PageControl := PageControl1;
Frame3 := TFrame3.Create(nil);
Frame3.Parent := TabSheetG;
Frame3.Show;
end;
现在我想知道选项卡是否已经创建,只需点击同一个按钮就可以激活它
答案 0 :(得分:2)
向您的班级添加TTabSheet
类型的私有变量。
type
TForm1 = class(TForm)
....
private
FMyTabSheet: TTabSheet;
end;
它会自动初始化为nil
。
在OnClick
事件处理程序中,测试变量是否为nil
。如果没有,请创建标签页,否则,请使用现有的标签页。
procedure TForm1.Button1Click(Sender: TObject);
begin
if not Assigned(FMyTabSheet) then
FMyTabSheet := TTabSheet.Create(PageControl1);
FMyTabSheet.PageControl := PageControl1;
... etc.
end;
PageControl1.ActivePage := FMyTabSheet;
end;