说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

我在Form1上动态创建了100多个TImage和200多个TLabel(不是控件数组,而是一个个创建的,设有唯一tag),怎样可以快速将他们全部删除,并

编辑:说三道四文库 发布时间:2017-10-18 07:29
HTML文档下载 WORD文档下载 PDF文档下载
我在Form1上动态创建了100多个TImage和200多个TLabel(不是控件数组,而是一个个创建的,设有唯一tag),怎样可以快速将他们全部删除,并释放其资源?
创建这些控件的代码如下:

  While not DM.ADOQuery1.Eof do
    begin
      img:=TImage.Create(Self);
      img.Picture.Assign(ImageRes.Picture);
      img.Transparent:=False;
      img.Parent:=BrowseForm;
      img.Cursor:=crHandPoint;
     ......................
for i:=Form1.ControlCount-1 downto 0 do begin
  if (Form1.Controls[i] is TLabel) or (Form1.Controls[i] is TImage) then 
    Form1.Controls[i].Free;
end;

感谢 tonylk(tony) 的回答,但是我试了一下,要大概2-3秒才能完全删除这几百个东西,有没有效率更高的办法?

还有:用downto而不是to是不是因为可以美观视觉效果?
已经很快了;
这种方法有个隐含的问题,也就是在循环变量中赋的是一个可变的值:
for i:=Form1.ControlCount-1 downto 0 do 
Form1.ControlCount-1 删一个控件,变一次,在这个例子里可能不会有问题,但在其他地方就有可能出错.最好改为repeat...until
还有一种方法是可以把这些控件都放到一个panel上,删除的时候,只要删除panel控件就可以了
如果要想更快的话,我有个方法,不过没有试,但应该比上面快.你创建一个TObjectList.
MyObjectList := TObjectList.Create;
这样你每创建一个你的控件,就把它加入到MyObjectList中.当需要Free时,只要把这个List放掉即可.如果为了界面好看.也许可以先把界面先隐含掉再做.
肯定比上面快吧.因为上面需要做运行时的类型判断.
to sunware():你说的问题不是问题
把Form1.ControlCount-1先赋给一个变量就可以了
proman() 的办法可取。
创建一个FPublicOwner(任何一种继承自TComponent的组件均可,如隐藏的Panel),
作为所有动态组件的Owner,
动态组件创建时将它们的owner设为FPublicOwner,
全部删除时直接删除FPublicOwner即可。
如:

img := TImage.Create(FPublicOwner);
lab := TLabel.Create(FPublicOwner);
...

FPublicOwner.Free;
晕,用DOWNTO 而不用TO,并不是因为美化效果(帮TONY回答你),你自己看看,DOWNTO 和 TO 有什么区别,最简单的,从10循环到100就用TO ,从100循环到10就要用DOWNTO,明白了吗?????
我同意 zzheaptech(风的往事) 的方法!
在生成这些控件的时候指定它的parent为一个Panel,删除的时候直接将Panel删除掉,就会很快的
关注……
proman() 的说法绝对正确,补充一点:创建控件时,1 create,2 将控件加入数组,并获得数组内的序号 ;3 将序号付给控件的tag值 这样的好处在于可以任意删除、添加、修改某一个控件。
楼上不错,学习
替楼主问个问题,如果删除了再想创建呢,如把panle删除了是不是也要创建一个Panel呢,如果我想把这些Label或image保存到库中呢。包括label的x,y
坐标,tag属性,属于何中类型,如果我用list保存这些控件,如何我删除的不是全部面是一个或几个,怎样从这个list中快速找到我删除的哪个或哪几个控
件呢,(前提是不允许用循环啊)@_@
呵呵,我有办法解决。


引用一个新窗口form2,在form2上创建,全部创建完后把form2载入到form1的某个panel里显示。要删除时,先将form2隐藏,再删除form2。

form2.parent := form1.panel1;
form2.show;
不闪烁,无需循环
Gartner:至2017年Chromebook销量将增2倍 后稀缺时代思考:机器横行下的人类夹缝求生 TIOBE 2014年8月编程语言排行榜:Swift跌出Top 20 精华回顾!历届MDCC大会精彩演讲与议程汇总 《近匠》Fancy3D:亿级游戏背后的轻量级引擎 假如李小龙是程序员…… Docker已扎根新一代PaaS 三星或发布首款头戴式VR设备Project Moonlight 英特尔亚太研发总经理何京翔:数据化时代背后的智慧 云络网络科技CEO Steve Mushero:游戏行业的云运维 腾讯游戏运营管理中心总监刘栖铜:腾讯游戏云的理想与实践 一号专车产品总监曹景辉:LBS应用仍有无限的创新空间 昆仑游戏总裁张益豪:做好中国游戏的海外代理 游族首席运营官陈礼标:重点打造全球化IP 我是怎么利用微信月收入三万以上的! 我的Y Combinator黑客马拉松之感! 最炫HTML5 JavaScript框架Famo.us融资2500万美元 看板先驱David J. Anderson:看板方法拉动互联网时代敏捷变革 《近匠》增强现实开发团队LegendTech:AR技术现已加入15元豪华午餐 微软新技术:简单修改,手机摄像头摇身变3D深度相机 Black Hat USA安全隐患盘点及黑客奥斯卡颁奖 MDCC免费展位报名火热!数量有限,征集进行中 迪游信息科技CEO张晓雷:中日游戏面面观 百余款智能电视创意类应用参赛角逐 Top13 App新鲜出炉! 微信公众平台开发——如何保证access_token长期有效? 拼的就是速度!超快HTML5 2D渲染引擎Pixi.js 一周消息树:百度“涉黄”遭警告,网盘内容审核的四种方式 微信开发商现状调查:接口限制成主要困扰 行业需求多样是最大难点 小米:海外扩张需谨慎,信息安全或成最大掣肘 AMD FX系荣耀归来 或成大众新宠! 脑洞大开:《80天环游地球》同名游戏诞生记 无法创建asp.net应用程序 高手在上,请问怎么样在win2k中实现关闭程序和绘图[内详] 初学者问:如何在listview中查找其中一行? 怎样在调试窗口中看到变量值? 郁闷中,狂散分。。。。。。 DCOM怎么使用? 想做一个地区门户一般要包含那些栏目?? 线程 怎么能让DELPHI编出来的程序最小化以后进入到系统托盘? C++问题,请进来帮忙! help me ~!!! 以下行为究竟是关闭端口还是使用端口 callzjy(【剑客西门吹雪原来是仁者帮帮主...】) 怎么翻了这么多老帖子出来了??? 求原代码下载 大家都在干什么? 有什么东东大家可以一起研究研究? 初学者问:如何在listview中查找其中一行? fortran语言的高手请进,分数不够再加 我是一个刚刚步入JAVA世界的小鸟 恳请得到大家的帮助 。。 ActiveForm发布问题。 怎么能让DELPHI编出的程序像QQ一样可以自动隐藏? 一个关于dll的例子,运行不了,请帮忙看一下。 程序打包 BCB产生调试符号的问题 为什么要4张1寸的,1张2寸的照片?要这么多干什么/ 请问怎么样用C#遍厉注册表? 请问大家如何做一个实时的屏幕抓取的程序啊,是实时 各位大哥大姐帮帮小弟,先谢谢了!!! 用Delphi开发的WebService能否在NT4的IIS上面运行? 键盘纪录问题 一个窗体有多个按钮,怎样让一个按钮成为默认按钮? 关于MYSQL_CONNECT(),有点疑问 ASP.net好像也不能替代JavaScript吧? 网络游戏外挂之我所见(7) 键盘纪录问题 键盘记录问题 我为谁哭泣.. sql小问题 大家快帮帮我吧,我快崩溃了 谁知道VisualAge for Java 3.5的help打不开该怎么办?(能解决问题必给分) 网络游戏外挂之我所见(7) 谁知道VisualAge for Java 3.5的help打不开该怎么办?(能解决问题必给分) Access数据记录复制? 急﹗﹗﹗ 关于数据库表的问题 cpu设计学习的问题 也许是很土的问题 哪位兄弟能帮我VB做的dll转成标准的dll。 关于过程与模块的菜鸟百思不得其解的简单问题,兼散分。 用过其他集成开发环境的请进。 COM+的调用时间和MIDAS的调用时间? 请教高手,那里有SPcomm通讯组件的下载地方? 哪里有VOD点歌系统下载???? He's under the tree.(改为一般疑问句) 三相四线漏电开关能否把3个相线并联后用在单相电中?手头有个3相4线漏电开关,担心用电高峰用单相电流不够,想把3个相线柱子并联,这样是否可以增加单相输出电流?比如额定三相20A的可以变6 10AH/12V 蓄电池供电电压是多少? 英语200字作业 你如何看待google谷歌公司退出中国大陆市场的原因,影响中美之间在审查制度上的区别如何? 三相四线电,有个切袋机(是单相电的)外壳接到水管漏电开关跳?三相四线电(原来是请电工安装的三相电,但他没有给我拉接地线),切袋机(是单相电的)金属外壳接到水管漏电开关跳?我 题李凝幽居的创作背景 碳排放交易市场怎样申请 因式分解:(m+n)^2-6(m+n)+9 有一个周长是628米的圆形湖,在湖钟间有一个直径为100米圆形小岛露出水面.环形湖面中有4分之3的面积种了白莲.湖面面积是多少?种白莲面积是多少?我们还没学圆,只能用比或者是分数除法去 生活在距今约180多万年前的()西侯度猿人已经有了简单原始的渔猎生活.白天不懂夜的29452 13+15+17+…+197+199 oo'为竖直轴,mn为固定在oo'上的水平光滑杆,有2个质量相同的金属球a,b套在水平杆上,ac,bc为抗拉能力相同的2根细线,c端固定在oo'上,当绳拉直时,a,b2球转动半径之比恒为2:1,当转轴的角速度逐渐 如何切入碳交易市场 某过街天桥的设计图是梯形ABCD,桥面CD与地面AB平行,DC=62米,AB=88米,左斜面BC与地面AB的夹角为30度,立柱DE垂直于AB于E立柱CF垂直于AB于F,求桥面DC与地面AB距离(精确0.1米) 若将A(-5,7)在坐标平面先向左移动2个单位,再向上移动3个单位得到A′的坐标为? 半圆的周长怎么求 如图,ABCD为倾角α=37°的矩形斜面,其中AB与底边CD平行,AB=0.6m,BC与AD平行,BC=0.8m,斜面上物体的质量是2kg,与斜面间的摩擦因数为0.5,在平行斜面的恒力F的作用下,由静止开始沿斜面的对角线从B运动 动物的嘴巴有什么作用 三角形边长分别为33米,19米,24米.求面积 高电压和低电压是以多少伏分的呀? 动物的嘴巴有什么用处 三角形边长分别是42米、44米、24米求面积因是面积补偿争议 低电压和高电压的范围是多少? 如图所示的水平转盘可绕竖直轴OO'旋转,盘上水平杆上穿着两个质量均为m的小球A B.先将AB分别置于距轴r和2r处,并用不可伸长的轻绳连接.已知两球与杆的最大静摩擦都是fm,试分析w转速逐渐增 英语翻译:“琐碎的事情”有没有一个词代表“琐碎的事情”呢?用在iBT口语中. 有两个规格相同的灯泡L1L2,把它们连入同一电路中,并用两个开关S1S2控制它们.要求:当只闭合S1是,L1发光,L2不发光;当只闭合S2是,L1L2都不发光;当S!S2都闭合时,L1L2都发光,请画出这个电路的电 功率10KW阻性单相负载,为什么用二极漏电保护器跳,四极漏电保护器不跳? 英语中一些琐碎的问题有时候对英语感觉很无语,例如吧:bit的现在分词我觉得应双写t加ing,但他就非要是biting.做题中遇到要填一个词“noise levels”但我觉得level不需要加s啊?再例如,no后跟单 直流高电压的产生? 单相7KW负荷用多大的漏电保护器 问几个琐碎的英语问题、1、情感(名词)用英语怎么写、是可数的吗?2、翻译一个句子、它不但是感情而且是行动.(用not only...but also)3、“快乐大本营”用英语怎么翻译或者是无法翻译?4 移动 通话时间到多少秒就算2分钟?如题 某圆形湖周长3140米,在湖的中间有一个面积是3000平方米的小岛,如果在湖中种满荷花,每平方米水面可以收莲子0.05千克一共可以收莲子多少千克? 什麼是水压 高电压充电器充低电压电池,串个电阻行吗如48伏充电器充12伏电池 某圆湖周长3140米,在湖中有一个面积是3000平方米的小岛.如果在湖中中莲花,每平方米水面可以收莲子0.05kg.一共可以收莲子多少kg? 琐碎的事 用英语怎么讲 转盘刚转的一刹那.盘上物体的摩擦力方向我知道当转盘转动后.物体的摩擦力方向是向圆心的.可当转盘刚转动的一刹那.物体的摩擦力方向向哪里? 圆形湖面,周长3140米,湖中间有个面积5000平方米小岛,湖面种菱角,每平方米收0.02千克,共可收几千克 琐碎翻译成英文 在电路中,有一个高电压电池和一个低电压的,二者正负极相反,并连有一个电阻,当电路接通时,低电压电池会消耗能量,那此时它应该是电源还是负载呢? 请问坤耐牌的3.0MM厚隔音毡一卷有多重? 已知三角形ABC三条边长分别是18,24,30则最长边上的中线是多少 .高电压测试时绝缘电阻OK,是不是低电压下一定OK?高电压下测试的绝缘电阻值与低电压下测量的值,有什么关 台湾话里面经常听到说:”你很基吧诶“”! 青海湖的美,美在湖水蓝,令人醉 仿写 写出四位中国奥运会冠军和他(她)从事的项目 .高电压测试时绝缘电阻OK,是不是低电压下一定OK?高电压下测试的绝缘电阻值与低电压下测量的值,有什么关 青海湖的湖水有什么特点?为什么会有这样的特点呢? 电池组:关于电池组 12V 20AH与24V 20AH,两个都是输出2.0A电流,容量是否一样?功率如何计算? 上拉电阻如何注入电流拉高电压,下拉电阻增加器件输出电流拉低电压,作用过程原理是怎样的啊? 我叫徐建蕾 想给自己取个英文名 希望大家帮我取一个好听点的英文名 我有一个48V20A的直流电瓶,怎么转换成220V交流电,具体需要什么元件?市场是否好买? 位于坐标原点的一个P按规则运动:质点每一次移动一个单位,移动方向是向上或向右,且各自的概率都是0.5位于坐标原点的一个P按下述规则运动:质点每一次移动一个单位,移动的方向是向上 青海湖、湖水面积有多少平方米 我一会儿出去用英语怎么说i am gong out _____ _____ 位于坐标原点的一个质点P按下述规则移动:质点每次移动一个单位,移动的方向为向上或向右,并且向上、向右移动的概率是1/2,质点P移动3次后位于点(X,Y),则满足 x小于3且x-y+1大于0 的概率 我叫兮希望大家帮我取个好听点的英文名要加读音备注哦 高一物理问题A.B两质点从同一点开始沿直线运动,右图中的①、②分别为二者的υ-t图线,则下列判断中正确的 想买12v的铅蓄电池10AH电动车上的那种在网上买可靠吗?我想买天能的 朝鲜向欧洲派足球留学生 为成为体育强华媒:揭秘核潜艇部队新海军战略呼之欲杭州规定60方以上新建住宅最少配一个杭州酝酿再度延长地铁末班时间 延长至浙江省委通报省级班子专题民主生活会情杭州彩虹快速路有望11月开通贵阳拆迁猫鼠游戏:白天拆晚上搭 与城中国反贪关键词:健全机制让群众敢举报贪官忏悔录:本来只想捞几万 接判决难美女童为父亲录庆生视频爆红网络【组图贝克汉姆超速再度载长子出车祸【组图】白宫说奥巴马对国家安全局有信心监听门让世界彻底放弃侥幸纽约股市三大股指28日涨跌不一约40名尼日尔移民因汽车抛锚在撒哈拉美方称机密情报泄露未对美外交政策造成海军第一艘核潜艇去除核反应堆退役美女童为父亲录庆生视频爆红网络(组图美4囚犯上演浴室版“越狱” 2人被缉俄称愿与北约就导弹防御系统进行建设性叙利亚一议员遭恐怖分子绑架旅博会首设乡村馆,体味逍遥农家乐趁着年轻,来次浪漫行淘金梦里的矿山风云没有瑶人的瑶岗仙传三一获湖南民营银行独家申筹资质瑶岗仙的百年历程湘邮科技:出让长沙银行1000万股张家界提质景区交通招财宝升级,阿里金融发力P2P购物满1000元,可抽中全房家电橙果设计长沙五一店开业冒充项目经理收钱后人间蒸发瑶岗仙的钨矿,成为两次世界大战中的重“在风雨中被压塌的大成殿,当年曾是我湖南省稀土产业集团牵手五矿瑶岗仙的百年历程郴电国际:定增获证监会审核通过全民营销,高传播率背后的伪救赎?大红酸枝领跌红木家具省内小额股票质押推出瑶岗仙的钨矿,成为两次世界大战中的重
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘