我正在使用 C++ Builder 创建一个 VCL 表单应用程序。现在我有一个包含一堆组件的 TFrame,它看起来像这样......
我还有一个名为“添加”的按钮。基本上每次我按下表单上的 Add 按钮时,都会在其中添加一个新的 TFrame,并在前一个 TFrame 的下方创建一个看起来像表格的东西。为了添加重复项,我必须在每次创建 TFrame 之前重命名它。
int __fastcall TForm1::AddMapCells(void)
{
Num++;
TFrame1 * MyFrame = new TFrame1(Form1);
MyFrame->Parent=Form1;
MyFrame->Name = "TFrame" + IntToStr(Num);
MyFrame->Top = 23*Num;
return Num;
}
那么 TFrame 的命名将是 TFrame1、TFrame2、TFrame3 等。
现在的问题是我想这样做,所以每次我按下 TFrame 的“X”按钮时,它都会删除该 TFrame,我不太确定该怎么做。我在想,也许每次我创建一个 TFrame 时,我也可以重命名“X”按钮,所以它就像 Button1、Button2、Button3 等。然后删除程序只需将 ButtonX 与 TFrameX 匹配以确定要删除的 TFrame。例如,如果我按下按钮 4,它应该与 TFrame4 匹配并删除 TFrame4。
我不知道如何实现这个想法。或者会有更简单的方法吗?