动态创建窗体 我将程序中用到的窗体名称都保存在数据库中,但在程序中如何根据名称打开指定的窗体,小弟困惑,各位大虾多教教我。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 RegisterClass需要在initliza里注册。 小弟初学DELPHI,楼上能否详细点,先谢过 unit Main;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);var sClass: String; ss: TPersistentClass; dd: TForm;begin sClass := Edit1.Text; ss := GetClass(sClass); if ss = nil then Exit; dd := TFormClass(ss).Create(Application); dd.Left := 0; dd.Top := 0; dd.ShowModal;end;initialization RegisterClasses([TForm1]);end. 楼上兄弟谢谢了,我试了一下,如果窗体已经打开了的就行,但我的情况有点不同,举个例子我新建了一个应用,有两个FORM,分别为FrmMain(mdiform)和Frmchild(mdichild),程序启动时只自动创建了FrmMain现在一菜单(动态生成的)的CLICK事件中完成打开Frmchild的动作,mouldname :stringmouldname = 'FrmChild'以下如何处理..... 一样的处理啊,你在child里注册。在mdiform里寻找和打开就可以了!我只是把代码压缩了放到一个单元里而已! 你自己可以在我那测试程序里多加几个窗体,并且把类都注册了。在你edit里输入相应的名字,就可以创建相应的form了 我试了一下,还是一样,假若FROM已经打开了,就可创建一个副本,即同样的窗体再打开一个,但FROM没打开的,就没反应了 请问怎样为DBGridEh加一个选择列? 请教一个关于置文件于粘贴板的问题 类似的问题,如何去掉DBGRID中无用的数字0 关于有字母的CRC校验 请问如果超过百万条记录的一个程序。。。。 有没有自动排序的grid第三方控件 intraweb版本问题!求救! 在开发控件时,如何得到用户在设计期间控件属性变化? 我的客户机程序访问服务器被拒绝,是怎么回事啊? 大家帮忙提醒一下:字符串统计其中某个子串重复出现的次数,现在忘记了 SPCOM串口通讯及Tchart实时曲线分析问题 高分有人有转发程序吗???
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;type
TForm1 = class(TForm)
Button1: TButton;
Edit1: TEdit;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;var
Form1: TForm1;implementation{$R *.dfm}procedure TForm1.Button1Click(Sender: TObject);
var
sClass: String;
ss: TPersistentClass;
dd: TForm;
begin
sClass := Edit1.Text;
ss := GetClass(sClass);
if ss = nil then Exit;
dd := TFormClass(ss).Create(Application);
dd.Left := 0;
dd.Top := 0;
dd.ShowModal;
end;initialization
RegisterClasses([TForm1]);end.
但我的情况有点不同,举个例子
我新建了一个应用,有两个FORM,分别为FrmMain(mdiform)和Frmchild(mdichild),
程序启动时只自动创建了FrmMain
现在一菜单(动态生成的)的CLICK事件中完成打开Frmchild的动作,
mouldname :stringmouldname = 'FrmChild'
以下如何处理.....
在mdiform里寻找和打开就可以了!
我只是把代码压缩了放到一个单元里而已!
在你edit里输入相应的名字,就可以创建相应的form了