DELPHI盒子
!实时搜索: 盒子论坛 | 注册用户 | 修改信息 | 退出
检举帖 | 全文检索 | 关闭广告 | 捐赠
技术论坛
 用户名
 密  码
自动登陆(30天有效)
忘了密码
≡技术区≡
DELPHI技术
移动应用开发
Web应用开发
数据库专区
报表专区
网络通讯
开源项目
论坛精华贴
≡发布区≡
发布代码
发布控件
文档资料
经典工具
≡事务区≡
网站意见
盒子之家
招聘应聘
信息交换
论坛信息
最新加入: delifei
今日帖子: 45
在线用户: 12
导航: 论坛 -> DELPHI技术 斑竹:liumazi,sephil  
作者:
男 chinarjin (水手) ▲▲▲▲▲ -
盒子活跃会员
2018/9/12 13:07:52
标题:
RzPageControl1判断窗口是否已经打开 浏览:357
加入我的收藏
楼主: RzPageControl1判断page窗口是否已经打开,打开直接调用。否则增加
----------------------------------------------
因为爱所以爱,Delphi 
http://www.qzpcn.com
作者:
男 sail2000 (小帆工作室) ★☆☆☆☆ -
盒子活跃会员
2018/9/12 13:24:49
1楼: Assigned(...)
----------------------------------------------
delphi 是兴趣,和工作无关,即使它倒闭。
又不靠它 delphi 吃饭,怕甚?
作者:
男 zhahongyi (如风) ▲▲▲▲▲ -
普通会员
2018/9/12 14:02:52
2楼: procedure Tfrmain.ShowDockForm(FormClass: TFormClass; dockCtrl: TRzPageControl);
  procedure ShowCaption(ParentCtrl: TWinControl; ACaption: string);
  begin
    if ParentCtrl is TRzTabSheet then
      TRzTabSheet(ParentCtrl).Caption := ACaption;
  end;

var
  i: Integer;
  TabCtrl: TRzTabSheet;
  Form: TForm;
begin
  if dockCtrl = nil then
  begin
    Form := FormClass.Create(nil);
    Form.Position := poMainFormCenter;
    Form.ShowModal;
    Form.Free;
  end
  else
  begin
    Screen.Cursor := crHourGlass;
    try
      for i := 0 to Screen.CustomFormCount - 1 do
        if Screen.CustomForms[i] is FormClass then
        begin
          if (not(Screen.CustomForms[i]).Visible) then
          (Screen.CustomForms[i]).Visible := True;
          (Screen.CustomForms[i]).BringToFront;
          (Screen.CustomForms[i]).SetFocus;
          TabCtrl := TRzTabSheet(Screen.CustomForms[i].Parent);
          ShowCaption(TabCtrl, Screen.CustomForms[i].Caption);
          TRzPageControl(dockCtrl).ActivePageIndex := TabCtrl.PageIndex;
          Exit;
        end;
      // if RzPageControl1.PageCount > 1 then
      // begin
      // ShowMessage('请关闭当前窗口!');
      // exit;
      // end;

      TabCtrl := TRzTabSheet.Create(dockCtrl); // dockCtrl
      TabCtrl.PageControl := TRzPageControl(dockCtrl);
      TRzPageControl(dockCtrl).ActivePageIndex := TabCtrl.PageIndex;

      Form := FormClass.Create(TabCtrl);
      with Form do
        try
          ManualDock(TabCtrl);
          ShowCaption(TabCtrl, Caption);
          Show;
          Form.WindowState := wsMaximized;
          Form.Align := alClient;
        except
          Free;
        end;

    finally
      Screen.Cursor := crDefault;
    end;
  end;
end;

调用:
ShowDockForm(TForm_main, RzPageControl1);

ShowDockForm(TForm_main, nil);
----------------------------------------------
-
作者:
男 chinarjin (水手) ▲▲▲▲▲ -
盒子活跃会员
2018/9/12 14:21:55
3楼: 2楼会出现如图错误
此帖子包含附件:
PNG 图像
大小:395.8K
----------------------------------------------
因为爱所以爱,Delphi 
http://www.qzpcn.com
作者:
男 chinarjin (水手) ▲▲▲▲▲ -
盒子活跃会员
2018/9/12 14:27:34
4楼: 1楼能不能祥细些?
----------------------------------------------
因为爱所以爱,Delphi 
http://www.qzpcn.com
作者:
男 zhahongyi (如风) ▲▲▲▲▲ -
普通会员
2018/9/12 15:01:40
5楼: http://bbs.2ccc.com/topic.asp?topicid=552704

这个帖子里1楼3楼回答的很清楚了。
----------------------------------------------
-
作者:
男 chailang (chailang) ★☆☆☆☆ -
盒子活跃会员
2018/9/15 21:31:28
6楼: 我这儿有现成的实例,需要的留下邮箱
----------------------------------------------
-
作者:
男 nevergrief (孤独骑士) ★☆☆☆☆ -
盒子活跃会员
2018/9/16 3:29:28
7楼: 我敢断言,楼主对数据结构的使用还没有自己的心得。这种东西,有没有固定的方法都不要紧,都可以自己实现。比如做一个全局的指针数组,专门用来记录已打开窗口,下次创建/打开前先在里面判断一下。其实我的编程水平也很烂,纯技术的东西很多都不懂,但就是会把实际需求翻译成数据结构,然后努力加以实现,这应该也算一种能力吧??
----------------------------------------------
只有偏执狂才能生存!
作者:
男 chinarjin (水手) ▲▲▲▲▲ -
盒子活跃会员
2018/9/16 10:44:08
8楼: 谢谢6楼,7678263@qq.com
----------------------------------------------
因为爱所以爱,Delphi 
http://www.qzpcn.com
作者:
男 wang_80919 (Flying Wang) ▲▲▲▲△ -
普通会员
2018/9/16 11:08:16
9楼: http://bbs.2ccc.com/topic.asp?topicid=552741
重复
----------------------------------------------
(C)(P)Flying Wang
信息
登陆以后才能回复
Copyright © 2CCC.Com 盒子论坛 v2.1 版权所有 页面执行46.875毫秒 RSS