关于判断MDI窗体是否存在,存在则显示,不存在则创建

原创 2007年10月08日 11:06:00

采用MDI模式设计窗体,每次显示新的窗体时候,前一个窗体就会被覆盖,当再次需要显示前一个窗体的时候,首先判断窗体是否已经存在,如果存在那么显示即可,不存在则创建

 

function Tmain.FindForm(caption: string): bool;
var
i:integer;
begin
 for i:=0 to main.MDIChildCount do
  begin
   // 通过对窗体标题判断窗体是否存在
    if main.MDIChildren[i].Caption=caption then
     begin
      //如果窗体已存在,则恢复窗体,并返回true
      SendMessage(mdichildren[i].Handle, WM_SYSCOMMAND, SC_restore, 0);
      mdichildren[i].Enabled:=true;
      mdichildren[i].Show;
      mdichildren[i].SetFocus;
      result:=true;
      break;
     end
     else
     //如窗体不存在,则返回false,程序将创建窗体
      result:=false;
  end
end;
-------------
procedure Tmain.N2Click(Sender: TObject);
var
newform:TSecSetting;
begin
if findForm( '会计科目设置 ')=false then
 begin
   //若窗体不存在,则创建窗体
   newform:=Tsecsetting.Create(application);
   newform.Caption:= '会计科目设置 ';
  end;
end;//判断是否存在窗体并创建 

MFC 判断子窗体是不是已经打开,避免重复创建

MFC 判断子窗体是否已经打开,避免重复创建 在主窗体中,嵌入一个很多个子窗体,但是,每次只显示一个。 我的做法是,首先在主窗体头文件中定义子窗体对象,然后在单击显示按钮的时候,先判断子窗体是否已...
  • ghevinn
  • ghevinn
  • 2014年06月09日 10:39
  • 3807

PHP检查文件存不存在,不存在自动创建,读取文件内容

  • bulongwind
  • bulongwind
  • 2015年05月14日 11:23
  • 4061

判断路径文件夹是否存在,不存在创建

C/C++判断一个文件是否存在 1. bool isExistFile(const char *pszFileName){     FILE *fp = fopen(pszFileName,...
  • u012377333
  • u012377333
  • 2014年09月05日 11:53
  • 5206

在asp.net中怎么判断某目录是否存在,若不存在就建立一个

  • 2014年07月16日 09:38
  • 347KB
  • 下载

ajax 异步注册判断用户名存不存在

  • 2016年08月05日 17:35
  • 2KB
  • 下载

判断本地系统目录下是否存在XML文件,如果不存在就创建一个XMl文件,若存在就在里面执行添加数据

这是我为项目中写的一个测试的例子, 假如,您需要这样一个xml文件, "1.0" encoding="utf-8"?> 001 lee 2013-06-25 ...
  • dyllove98
  • dyllove98
  • 2013年06月26日 19:52
  • 3893

借鸡下蛋---MDI窗体显示无对齐属性控件

对于MDI(多文档界面窗体大家都不陌生,在寒假学习VB的时候我们学习过,在做百例的时候,做的例子是一个窗体显示   多首诗,对已打开的子窗体进行“层叠”、“平铺”、“垂直”与“排列图标”等项操作....
  • tang_huan_11
  • tang_huan_11
  • 2012年09月13日 20:36
  • 2250

【机房重构】--Panel控件解决MDI窗体显示

问题:第一版机房收费系统在MDI窗体上添加了PictureBox控件,子窗体不显示,后来又运用了SetParent函数解决的。这次用了一个很好用的控件Panel,重构版的机房出现了同样的问题。作用:是...
  • YYZZHC999
  • YYZZHC999
  • 2017年06月11日 18:00
  • 386

机房收费系统-- MDI子窗体显示技巧(续vb.net版)

mdi父窗体中,无论打开多少个子窗体,都只显示一个子窗体
  • chenjinge7
  • chenjinge7
  • 2013年08月27日 20:10
  • 2046

子窗子显示在MDI主窗体panel控件之上

机房收费系统中,需要将子窗子显示在MDI主窗体panel容器控件之上。查了资料。大概网上有两种方法。一种是是可以将子窗体上的控件直接内嵌到panel控件之上,还有一种是子窗子显示在MDI主窗体pane...
  • suneqing
  • suneqing
  • 2014年02月15日 14:25
  • 2937
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:关于判断MDI窗体是否存在,存在则显示,不存在则创建
举报原因:
原因补充:

(最多只允许输入30个字)