如何检查 tabSheet 是否已经在 TPageControl 中创建
How to check if the tabSheet are already created in the TPageControl
我在 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;
现在我想知道该选项卡是否已创建,并在我单击同一按钮时将其激活
将 TTabSheet
类型的私有变量添加到您的 class。
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;
我在 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;
现在我想知道该选项卡是否已创建,并在我单击同一按钮时将其激活
将 TTabSheet
类型的私有变量添加到您的 class。
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;