动态创建多个相同窗体后如何分别改变上面的edit->text值

封姜大粒 2010-07-29 02:37:46
在主窗体main中每按一下button都会创建一个新窗体

HelloForm = new THelloForm(this);
HelloForm-> Show();


这样创建多个窗体后,如何在主窗体main中分别改变不同HellForm上的eidt->text值呢?
最好有示例代码,非常感谢
...全文
63 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
封姜大粒 2010-07-29
  • 打赏
  • 举报
回复
非常感谢两位,结贴!
CppFile 2010-07-29
  • 打赏
  • 举报
回复
也可把创建的类的实例放入list中
TList *list=new TList();

HelloForm = new THelloForm(this);
list->add(HelloForm);
HelloForm-> Show();

for(int i=0;i<list->Count;i++)
{
HelloForm *h=(HelloForm *)list->Item[i];
h->edt1->text="...";
}
这样的好处就是可以根据index的顺序分辨那个是先产生的,那个是后产生的
ccrun.com 2010-07-29
  • 打赏
  • 举报
回复
for (int i = 0; i < Screen->FormCount; i++)
{
if (Screen->Forms[i]->ClassNameIs("THelloForm"))
{
((THelloForm *)Screen->Forms[i])->Edit1->Text = String().sprintf(
TEXT("第%d个窗体"), i + 1);
}
}

13,825

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder相关内容讨论区
社区管理员
  • 基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧