form1,form2都可以打开form3,问题:怎样在form3里知道是被哪一个窗体打开的?
如题:
form1,form2都可以打开form3,问题:怎样在form3里知道是被哪一个窗体打开的?
比如,我在form3里加一个按钮btn1,当单击btn1按钮时,弹出打开form3的窗体的名称信息,求解!
[解决办法]
设定form3为Tform1,TForm2的field,手工创建与注销form3,show之前,设定窗体的名称信息。
[解决办法]
form3重写一个Create方法,传入主调窗体参数
Create(sender:Form)
[解决办法]
自定义一个showform,传调用窗体参数
[解决办法]
方法很多,最简单的就是在form3中设置全局参数吧
不同的窗体打开就设置不同的值
[解决办法]
最简单的做法在form3中的public部分定义一个变量
public
FName: string;
在调用窗口中对FName赋值
Form3.FName := 'xxxxx';
这样Form3按钮点击时就
ShowMessage(FName);
[解决办法]
传个参数就好了。
[解决办法]
如果是用ShowModal打开的话,就可以直接取到那个窗体:
ShowMessage(TCustomForm(Screen.SaveFocusedList.First).Name);
[解决办法]
form1打开form3
form3.caption:='form1打开'
[解决办法]
TForm3.Createa(AOwner : TComponent)
这个搞定