application.createform(tform,form);
form.show;
form.show;
解决方案 »
- delphi 向数据库插入数据问题
- 帮忙查错,无法实现将临时数组中的数据筛选和转存
- 有人用Dspack实现过OverLay显示吗?
- ExtractStrings splitstring 源字符串超出长度怎么办
- 带附件的发送电子邮件的命令应该怎么写?
- 请教大家,怎么实现IE里头把HTM另寸为MHT文件的功能?
- 由"亲爱的高手看过来,小女子有十万火急的事求救 "说开去
- 小弟请教高手一个问题!帮忙有分,up有分!
- 如何在OCX中操纵IE中指定的菜单项(100分)
- 呵呵,CSDN也要用代理才能上了吗?调整要这么就吗?
- 日期输入问题?
- cobi(我是小新,我只有5岁)你好,能给我一个打印和预鉴的例子吗?谢谢了!!我的E-mail:[email protected]
问题就是怎么样用一个对象的名称去控制对象,请大家一起想想。
你的那个方法中第二个参数是String型?
SetProp(Application.Handle, 'AboutFormHandle', AboutForm.Handle);var
AboutFormHandle: THandle;
begin
AboutFormHandle := GetProp(Application.Handle, 'AboutFormHandle');
end;
ShowWindow(Handle);
UpdateWindow(Handle);
用窗体名是现有两种办法:
1。使用API函数枚举窗体,(不安全);
2。使用CASE OF语句,会累死的。我想不出第三种方法。
关注
showform(formname:string);而这个Formname := 'TForm1';这样是可以实现。我就是想知道如果用Formname := 'Form1',这样的实现方法?
如果你的子窗口和主窗口都在同一个Project里面的话,很好办:
节点保存各个子窗口的类名(如:'Tchildform1','Tchildform2'),然后用GetClass或者FindClass得到这个类,然后创建就ok了!
我现在能提供一个字符串“MyNewForm”如何调用窗体“MyNewForm(Tform)”。
不知道是不是这样的。
Var
I:Integer;
Begin
Result:=nil;
If MainForm.MDIChildCount<1 Then Exit;
For I:=0 To MainForm.MDIChildCount-1 Do
If UpperCase(MainForm.MDIChild[I].Caption)=UpperCase(TitleStr) Then
Begin
Result:=MainForm.MDIChild[I];
Exit;
End;
End;
2.然后,就可以使用类名创建窗口实例了。这里主要是RTTI的应用。