前些日子做一个项目需要用到 Tpagecontrol 这个控件,然而平时使用的时候都是直接在上面增加控件就可以了,可是这次却是需要动态添加页面,上网也搜了,对于这方面的知识还真是没见到多少,也许是我搜索的方法有问题吧,千辛万苦也就找到了一下3种方法,如果要认真将的话,也只能算是2种吧,今天分享出来,希望能为要用到这个功能,又不会的人减少些时间吧。

第一种方法:

procedure PageAddForm(aPage:TRZpageControl;aForm:TForm;TaFormClass:TClass);
beginapplication.CreateForm(TComponent(TaFormClass),aForm);aForm.MaualDock(aPage));  //融合至pageControl,aForm.Visible:=true;              //这个比用 show效果更好aPage.ActivePageindex:=aPage.PageCount-1;
end;也可以用aForm.MaualDock 可以用setparent;

这个方法比较简单,直接可以使用这个函数,里面的aForm 和 TaFormClass 是新建的窗口,然而这个方法却一直有个问题,就是窗口创建出来后,有一个停靠的过程,虽然时间很短,然而总是影响美观的。

第二种方法:

这个方法比较复杂,然而应该就是创建动态方法的正确方法了。

procedure createTabPage(PageControl:TPageControl;form:TForm)
varnewpage:TTabSheet;
beginnewpage:=TTabSheet.create(PageControl);       //在PageControl 上创建TTabSheet控件newpage.caption:=form.caption;newpage.PageControl:=PageControl;      //按我的理解是设定newpage 的父控件PageControl.ActivePage:=newpage;     //吧newpage设定为活动页//到这里页面已经动态创建成功了,然而这还没有达到我们需要的功能,我们是需要在上面添加控件的form:=TForm.create(newpage);Form.FormStyle := fsNormal;Form.BorderStyle := bsNone;Form.Parent := vSheet;Form.Align := alClient;Form.Show;end

第三中方法就不贴了,基本上是上面的进行改造的

delphi Tpagecontrol 动态增加页面相关推荐

  1. Delphi的“动态窗体”技术实际应用[网络摘抄]

    Delphi的"动态窗体"技术实际应用   日期:2005年6月1日   作者:On2008   人气:613   查看:[大字体   中字体   小字体]     在Delphi ...

  2. aspx 追加html标签,ASP.NET动态增加HTML元素的方法实例小结

    本文实例讲述了ASP.NET动态增加HTML元素的方法.分享给大家供大家参考,具体如下: 在使用asp.net进行web开发的时候页面中的 中的信息可以通过asp.net的cs文件动态指定. 1.动态 ...

  3. driver.get调用iframe中的页面_【5分钟玩转Lighthouse】爬取JavaScript动态渲染页面

    0x00 背景概述 通过[技术干货 007 | Scrapy爬虫初探]教程,大家应该已经对如何编写爬虫有了一定的认识.但对于较为复杂的网站设计,比如网站页面使用了JavaScript动态渲染,入门级的 ...

  4. activiti动态增加节点_图神经网络之动态图

    图这种结构普遍存在于人类社会生活中,如互联网中网页间的互相链接会构成图.网民购买商品会构成"网民-商品"图.人和人的交流会构成图.论文的互相引用也会构成图.有许多任务需要根据这些图 ...

  5. 弹出框动态增加input输入框

    欢迎关注微信公众号: 程序员小圈圈 原文首发于: www.zhangruibin.com 本文出自于: RebornChang的博客 转载请标明出处^_^ 弹出框动态增加input输入框 最近项目上有 ...

  6. Ant Design of Vue +TS 表单动态增加数据验证卧坑姿势

    文章目录 Update 20210601 Update 20210525 原文: 1.a-form的model 2.获取数据 源码 Update 20210601 今天做别的页面的时候发现又取不到数据 ...

  7. Python3网络爬虫实战-38、动态渲染页面抓取:Splash的使用

    Splash 是一个 JavaScript 渲染服务,是一个带有 HTTP API 的轻量级浏览器,同时它对接了 Python 中的 Twisted和 QT 库,利用它我们同样可以实现动态渲染页面的抓 ...

  8. Vue-cli3项目seo优化--静态化打包(动态改变页面Titl、keyWords、description)

    Vue-cli3项目seo优化,静态化打包(动态改变页面Titl.keyWords.description) 文章目录 Vue-cli3项目seo优化,静态化打包(动态改变页面Titl.keyWord ...

  9. 利用动态渲染页面对京东笔记本电脑信息爬取

    写在前面 之前写过一个爬取京东商品的Scrapy爬虫项目,但是里面价格及评论数是通过逆向工程法获得的,在不使用代理ip的情况下,在爬取一定数量的商品后会被持续要求输入验证码.所以这里写出利用动态页面渲 ...

最新文章

  1. 我终于加上博士大佬的微信!攒了近百个技术问题,一口气解决!(文末有福利)...
  2. python连接文本文件_Python连接文本文件
  3. 《高性能python》第一章-理解高性能Python-阅读笔记
  4. 这个顶级AI赛事总奖池100W+!CV 、NLP赛题等你来战!
  5. 用java编写程序_用JAVA编写程序
  6. 测试用ASP.NET建立一个在线RSS新闻聚合器
  7. matlab能不能求不定积分,matlab求不定积分定积分
  8. Spine 3.8.75报错不能打开:Sorry, an unexpected error has occured. 日志显示Version cannot be null
  9. 全国大学生数学建模竞赛(CUMCM)历年试题(查看超级方便)
  10. tensorflow或运算 tf.logical_or tf.math.logical_or
  11. java 工作流开发框架比较
  12. 百度地图,定位,添加图标
  13. 大型超市计算机管理系统论文,大型超市进销存管理系统的设计与实现
  14. 富文本编辑器tinymce支持从word复制粘贴保留格式和图片的插件wordpaster
  15. Spring Cloud Gateway 动态路由管理,一点都不吹,应该没有比这更好的管理系统了吧
  16. 知乎:有哪些让你相见恨晚的 PPT 制作技术或知识?
  17. mysql 红黑树_微信大牛教你深入了解数据库索引
  18. 5G射频室内测试的关键技术
  19. Unity 引擎报错集锦
  20. 企业云资源管理系统需求分析

热门文章

  1. 【收藏】CentOS 7 安装NFS
  2. yarn配置日志聚合:将日志都聚集到某一台服务器
  3. (提示)ubuntu16.04通过sealos安装k8s,需要重新部署apply一下calico组件
  4. 基于rancher在线安装k8s集群
  5. 【Java面试题】汽水瓶问题
  6. JVM 调优实战--什么是垃圾回收及Java的自动垃圾回收GC
  7. MySQL官方提供的测试数据库脚本和数据文件下载
  8. redis在实际项目中使用实例
  9. 【SSM整合案例】静态资源和分页标签的添加
  10. python多线程下载ts_基于Python的ERA-5多线程下载(1)