使用父窗口时碰到的问题 主窗口是个普通窗口,点击一个按钮出现一个具有父窗口属性的窗口,同时想在父窗口的窗口上出现一个具有子窗口特性的窗口,但是错误高诉是can't create form . No MDI forms are current active.????????????????//处理这种方式,应该怎么办呀? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你的主窗口必须为MDIForm风格的窗口,否则不能创建MDIChild风格的窗口。 不是MDI的窗体有没有父窗体一说? 借用他人源码,帮你燃眉之急。大概是登陆的事情吧?项目文件是:{$R *.res}begin Application.Initialize; Application.CreateForm(Tmain, main); Application.CreateForm(Tlogin, login); if login.ShowModal = mrOK then Application.Run else Application.Terminate;end.-----------------------------------------然后在登录表单login的“确定”按钮中写入:begin modalresult:=mrOK;end; 你点按钮出来的窗口要设为MDIForm风格的窗口 恩,这么多人呀,呵呵。现在先将问题重复一下。 1、应用程序打开后是一个标准窗口。 2、在一个标准窗口下可以用一个按钮激活一个有MDIform的窗口,这步可以实现。 3、在这个MDIForm窗口下象创建具有CHild风格的窗口,但是不行,你们可以试一试。多谢了。 设置Application.MainForm 为那个MDIForm就可以了! 我的mdiform窗体为form2;我应该怎么设。 这样吗?application.MainForm := form2;但这样编译器通不过呀 can't assign to a read only property 菜单:project>options>Forms>Main Form 在下拉列表框中选择要设为主Form的窗体 参考一下DLL 中创子窗口的贴子, 不好意识,我并没有打算将mdi风格的窗口做为主窗口,在程序打开后便运行 变通的办法:新建应用程序新建Form2、Form3修改Form1的属性FormStyle为fsMDIForm修改Form2的属性FormStyle为fsMDIChild在.dpr源代码中添加Application.ShowMainForm := False;在Fomr1中添加Timer1并设置其Interval为100并在OnTimer时间中添加:Timer1.Enabeld := False;Form3.Show;你的目的就此实现。至于MID父窗口是否一定是MainForm或者如何才能不是MainForm,俺也不清楚。继续关注中... to kingofhell(地狱之王)项目文件是:{$R *.res}begin Application.Initialize; Application.CreateForm(Tmain, main); Application.CreateForm(Tlogin, login);//程序打开后是一个标准窗口 if login.ShowModal = mrOK then Application.Run else Application.Terminate;end.-----------------------------------------然后在登录表单login的“确定”按钮中写入:begin modalresult:=mrOK;//用一个按钮激活一个有MDIform的窗口end;接下来的子窗体可用!我测试过的没有问题! to kingofhell(地狱之王)项目文件是:{$R *.res}begin Application.Initialize; Application.CreateForm(Tmain, main); Application.CreateForm(Tlogin, login);//标准窗口login if login.ShowModal = mrOK then Application.Run else Application.Terminate;end.-----------------------------------------然后在标准窗口(login)的“确定”按钮中写入://这就是你说的用一个按钮激活一个有MDIform的窗口begin modalresult:=mrOK;end;够清晰了吧! to cnsuyong(小可) 谢谢,但是我这里还是不行, 你能否发到 受到后把分都给你。 TImgEdit控件上放透明Panel 关于时间比较 求助!!想把文件传输做成一个dll 键盘扫描码 電子報表?我公司在總帳系統中要做個報表生成系統!最好能實現金碟或用友電子表格的功能! 关于ado取数出错的问题 郁闷!!!!!!!!!!!!!!!!!!!!散分。。。。。。。。 帮我解释以下关于‘gdfocused in state’的问题吧! 关于delphi的ISAPI开发 请教一个有关listbox的怪问题。 D6到D7的程序转换,请大家帮忙,有关serversocket控件和TNMHttp控件 一个Filter的问题
否则不能创建MDIChild风格的窗口。
大概是登陆的事情吧?
项目文件是:
{$R *.res}begin
Application.Initialize;
Application.CreateForm(Tmain, main);
Application.CreateForm(Tlogin, login);
if login.ShowModal = mrOK then
Application.Run
else
Application.Terminate;
end.
-----------------------------------------然后在登录表单login的“确定”按钮中写入:
begin
modalresult:=mrOK;
end;
1、应用程序打开后是一个标准窗口。
2、在一个标准窗口下可以用一个按钮激活一个有MDIform的窗口,这步可以实现。
3、在这个MDIForm窗口下象创建具有CHild风格的窗口,但是不行,你们可以试一试。多谢了。
这样吗?application.MainForm := form2;但这样编译器通不过呀
can't assign to a read only property
新建Form2、Form3
修改Form1的属性FormStyle为fsMDIForm
修改Form2的属性FormStyle为fsMDIChild
在.dpr源代码中添加Application.ShowMainForm := False;
在Fomr1中添加Timer1并设置其Interval为100并在OnTimer时间中添加:
Timer1.Enabeld := False;
Form3.Show;你的目的就此实现。至于MID父窗口是否一定是MainForm或者如何才能不是MainForm,俺也不清楚。
继续关注中...
项目文件是:
{$R *.res}begin
Application.Initialize;
Application.CreateForm(Tmain, main);
Application.CreateForm(Tlogin, login);//程序打开后是一个标准窗口
if login.ShowModal = mrOK then
Application.Run
else
Application.Terminate;
end.
-----------------------------------------然后在登录表单login的“确定”按钮中写入:
begin
modalresult:=mrOK;//用一个按钮激活一个有MDIform的窗口
end;接下来的子窗体可用!
我测试过的没有问题!
项目文件是:
{$R *.res}begin
Application.Initialize;
Application.CreateForm(Tmain, main);
Application.CreateForm(Tlogin, login);//标准窗口login
if login.ShowModal = mrOK then
Application.Run
else
Application.Terminate;
end.
-----------------------------------------然后在标准窗口(login)的“确定”按钮中写入:
//这就是你说的用一个按钮激活一个有MDIform的窗口
begin
modalresult:=mrOK;
end;
够清晰了吧!
谢谢,但是我这里还是不行, 你能否发到 受到后把分都给你。