CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
花落谁家,你作主! 盛大widget设计大赛英雄榜
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

fomr2.ShowModal出现cannot make a visible window modal错误,但fomr2.Show则正常,为什么?

楼主d_delphi()2002-03-28 10:31:15 在 Delphi / VCL组件开发及应用 提问

fomr2.ShowModal出现cannot   make   a   visible   window   modal错误,但fomr2.Show则正常,为什么? 问题点数:100、回复次数:9Top

1 楼xunji(呵呵,MM,我想……)回复于 2002-03-28 10:34:06 得分 0

能给出部分代码吗Top

2 楼genphone_ru(哎,什么都要学,真累)回复于 2002-03-28 10:35:22 得分 50

Form2的Visible   属性设置为False;Top

3 楼CeleronII(抽烟的鱼)回复于 2002-03-28 10:37:22 得分 0

把Form的visible改为FALSE,SHOWMODAL的时候VISIBLE的属性值只能为FALSE。Top

4 楼CoolSlob()回复于 2002-03-28 10:37:22 得分 0

因为一个模式窗口不可以重复Show,也 就是不可以做多次ShowModal.  
   
  而非模式状态则可以,所以,你在调用Show方法时,不会报错!!Top

5 楼xxzxwl(starstar)回复于 2002-03-28 10:39:51 得分 0

试试:  
  Form2:=TForm2.Create(Application);  
  Form2.visible:=true;  
  Form2.showmodal;  
  Top

6 楼fredfei(飞飞)回复于 2002-03-28 10:43:09 得分 0

form2.formstyle;=fsNormal;  
  Top

7 楼xxzxwl(starstar)回复于 2002-03-28 10:45:08 得分 50

应该是:  
  Form2:=TForm2.Create(Application);  
  Form2.visible:=false;  
  Form2.showmodal;    
   
  一定对。  
  Top

8 楼amiao(新湖居士)回复于 2002-03-28 10:49:08 得分 0

tongyi   楼上Top

9 楼chocolate()回复于 2002-03-28 10:51:57 得分 0

把Form的visible改为FALSE,SHOWMODAL的时候VISIBLE的属性值只能为FALSE。  
   
  Top

10 楼afeisky(有贴必结,速结!)回复于 2002-03-28 11:01:21 得分 0

注意:  
  因为ShowModal与Show是不同的。  
   
  fomr2.ShowModal时,要求Form2.Visiable=False,假使你设置为Visiable=True就会产生错误:  
      看ShowModal函数定义:  
  function   TCustomForm.ShowModal:   Integer;  
  var  
      WindowList:   Pointer;  
      SaveFocusCount:   Integer;  
      SaveCursor:   TCursor;  
      SaveCount:   Integer;  
      ActiveWindow:   HWnd;  
  begin  
      CancelDrag;  
      if   Visible       //Form.visible=True.  
            or   not   Enabled   or   (fsModal   in   FFormState)   or  
          (FormStyle   =   fsMDIChild)   then  
          raise   EInvalidOperation.Create(SCannotShowModal);   //产生一个raise,出错误。  
      其中SCannotShowModal   =   'Cannot   make   a   visible   window   modal';      
  ...  
  end  
   
  fomr2.Show时,要求Form2.Visiable=True或False都不会错。  
  Show函数定义:  
  procedure   TCustomForm.Show;  
  begin  
      Visible   :=   True;  
      BringToFront;  
  end;Top

相关问题

  • showmodal出错,提示"can't make a visible window modal"
  • 在 MDI中ShowModal一个child后出现"cannot make a visible window modal",请教为何?
  • 我在创建一个窗口实例后,ShowModal时出现EinvalidOperation错误,Message:Cannot make a visible window modal
  • ShowModal()?
  • cannot make a visible window modal是啥意思啊?
  • 這個是什麼錯誤:Exception EInvalidOperation in module xx.exe at 0007FCCD.Cann't make a visible window modal.
  • 这是什么问题啊?cann't make a visible window modal?
  • 哪位大虾遇到国Can not make a visible windows modal的错误!!!急死我了
  • 急,为什么我一ShowModalForm(FRM),就抱'Canot make a visible window Modal'错误
  • visible?

关键词

  • 属性
  • fomr
  • showmodal
  • visible
  • visiable
  • 错误
  • show
  • cannot make
  • form
  • window modal

得分解答快速导航

  • 帖主:d_delphi
  • genphone_ru
  • xxzxwl

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo