BCB工程如何添加一个新窗体,通过程序中控制显示和隐藏?

时间:2021-08-04 17:43:21
现状:
1、目前已完成一个工程的开发(单窗体,称为FORM1),
2、现在希在这个工程中添加一个新窗体(FORM2),

目标:
1、通过FORM1中的一个按键能完成新窗体的显示

环境:
Windows XP+BCB

7 个解决方案

#1


#include  Form2
int m=1;  
void __fastcall TMainFrm::Button1Click(TObject *Sender)
{
   if(m==1)
    {
       Button1->Caption="隐藏";
       TForm2 *Form2;
       Form2=new  TForm2(Application);
       Form2->ShowModal();
       delete Form2;       
       m--;
       return;
     }
  if (m==0)
    {
       Button1->Caption="显示";
       Form2->Close();       
       m=1;
       return;
     }

}   

#2


form1 include form2

button里写
if(Application->FindComponent("Form2") == NULL)
{
TForm2 *f = new TForm2(Application);
f->ShowModal();
}
else
{
TForm2 *f = (TForm2 *)(Application->FindComponent("Form2"));
f->ShowModal();    
}

#3


file-new-other-form可以建立TForm2然后
在Form1包含Form2

#include  Form2 
int m=1;  
void __fastcall TMainFrm::Button1Click(TObject *Sender) 

  if(m==1) 
    { 
      Button1->Caption="隐藏"; 
      TForm2 *Form2; 
      Form2=new  TForm2(Application); 
      Form2->ShowModal(); 
      delete Form2;      
      m--; 
      return; 
    } 
  if (m==0) 
    { 
      Button1->Caption="显示"; 
      Form2->Close();      
      m=1; 
      return; 
    } 

}  

#4


抢分罗,555,没抢到沙发.

在铵钮事件中执行下列代码,记得将Form2的头文件加到第一个窗体里面啦.不然会报From2没有定义.

From2->Show();  // 显示

From2->Hide();  // 隐藏

#5


我操,一激动将Form2写成的From2了,误人子弟,罪过……
楼上的更正如下
Form2->Show();  // 显示 

Form2->Hide();  // 隐藏

#6


FormStyle可以都是fsNormal吗?

#7


在form1中添加相应的处理事件:
form2->show(); 
form2->hide();

#1


#include  Form2
int m=1;  
void __fastcall TMainFrm::Button1Click(TObject *Sender)
{
   if(m==1)
    {
       Button1->Caption="隐藏";
       TForm2 *Form2;
       Form2=new  TForm2(Application);
       Form2->ShowModal();
       delete Form2;       
       m--;
       return;
     }
  if (m==0)
    {
       Button1->Caption="显示";
       Form2->Close();       
       m=1;
       return;
     }

}   

#2


form1 include form2

button里写
if(Application->FindComponent("Form2") == NULL)
{
TForm2 *f = new TForm2(Application);
f->ShowModal();
}
else
{
TForm2 *f = (TForm2 *)(Application->FindComponent("Form2"));
f->ShowModal();    
}

#3


file-new-other-form可以建立TForm2然后
在Form1包含Form2

#include  Form2 
int m=1;  
void __fastcall TMainFrm::Button1Click(TObject *Sender) 

  if(m==1) 
    { 
      Button1->Caption="隐藏"; 
      TForm2 *Form2; 
      Form2=new  TForm2(Application); 
      Form2->ShowModal(); 
      delete Form2;      
      m--; 
      return; 
    } 
  if (m==0) 
    { 
      Button1->Caption="显示"; 
      Form2->Close();      
      m=1; 
      return; 
    } 

}  

#4


抢分罗,555,没抢到沙发.

在铵钮事件中执行下列代码,记得将Form2的头文件加到第一个窗体里面啦.不然会报From2没有定义.

From2->Show();  // 显示

From2->Hide();  // 隐藏

#5


我操,一激动将Form2写成的From2了,误人子弟,罪过……
楼上的更正如下
Form2->Show();  // 显示 

Form2->Hide();  // 隐藏

#6


FormStyle可以都是fsNormal吗?

#7


在form1中添加相应的处理事件:
form2->show(); 
form2->hide();