当前位置:主页>仓库管理软件> 列表

窗体执行速度慢! 找p3管理软件

仓库管理软件版1楼: 各位高手:小弟最近做一个程序,其中有些窗体根据数据库的值自动创建控件 可是实现起来速度慢 且在关闭窗体的时候 出现花屏 哪为老兄有过这种经历可否指点一下?
火急!!!!!!!!!!!!!!!!!!!!
email;tla-0992@163.com

2楼: 说的具体一些或者贴出代码来嘛 如个人记账软件

3楼: 1、应该不会很慢吧,要不设置Form.Visible:=False;生成完再来Show。
2、至于关闭窗体,会出现花屏?应该不会吧!!!!!!!
3、注意:动态创建控件,要注意设置它的Parent。有些控件需要编程主动释放。

4楼: 你不会是程序启动后,所有的事情全部做吧
你可以分部做,当程序启动后,只生成主界面
其他的界面等做响应的操作后在创建
这样分开,速度可能就要好多了

5楼: procedure TForm1.FormCreate(Sender: TObject);
begin
// 將這裡的所有處理事物放到下一個事件裡:FormShow
end;

procedure TForm1.FormShow(Sender: TObject);
begin
// 這是窗體顯示後,要處理的事物。
end;

6楼: 代码介绍如下:
viBox : TScrollBox;
......
......
......


窗体创建过程:
viBox := TScrollBox.Create(Self);
然后通过程序根据数据库字段动态在vibox上创建edit,combobox,memo之类的控件,但是在调用此窗体的时候速度慢得停顿3, 4秒窗体关闭的时候还不是立即关闭,总有花屏,关闭程序如下:

FormDestroy过程:

try
ViBox.Free;
ViBox:=nil;
self.close;
except
end;

仓库管理软件版7楼: 对了 此窗体是以showmodal形式打开的

8楼: 是“根据数据库字段动态在vibox上创建edit,combobox,memo之类的控件”引起的,创建需要事件,显示出来也需要时间!
你可以把这段代码注释掉,然后看看速度如何

9楼: 注释掉就等同与一个show嘛 ........


哎呀.....高手呀指点一下了????答案接受后定再加200分

10楼: 創建数据库字段的時候是不是觸發哪些代碼在運行?

11楼: 用的是ACCESS库 没有触发器之类的东西

12楼: 不知道你的数据量有多大呢?
再看一看你读写数据库的代码,多数是这里慢. 如财务软件免费下载

13楼: 是否AlphaBlend:=True;?

仓库管理软件版14楼: TO HAPPY_BOY


数据库的数据量也就1千条不到  对数据库只是读取操作而已 
我想这样做:先判断其是否已经创建 创建了直接调用 没有再开始创建 但是这样的话耗内存 特别是配置低的计算机那就更慢了

15楼: 我用了FreeAndNil()这个函数 关闭时候花屏问题解决了 可是当返回主调窗体又提示说:访问地址错误!
为什么回这样呢?

16楼: 哈哈,将主窗口创建前增加一个引导窗口,在初始化完成后再隐藏销毁引导窗口,创建显示主窗口,这样就不会有任何问题了

17楼: TO 陈东海 能不能具体一点呢? 怎么加一个引导窗口呢?

18楼: 如果全部窗体都是同时创建的话,那样肯定会很慢,可以先只创建最开始需要的窗体,其他的在调用的时候创建啊。

19楼: TO : gameboday
控件是根据数据库字段多少来创建的 每次多少不定 现在在关闭窗体的时候控件释放速度很慢 有花屏现象(要销毁的窗体没有完全隐藏,要显示的窗体也没有完全显示 过几秒才能正常) 这怎么解决呢?

20楼: 界面多线程
!!!!!

仓库管理软件版21楼: 能具体点吗?或者举个列子都行 谢谢

22楼: 动态创建后为什么销毁时候程序回花屏呢?请大虾指点..谢谢! 如p3管理软件

23楼: 每个控件的信息在数据库中怎么存放的呢?

24楼: 不是存放控件信息 而是根据数据库中的数据类型选择要创建的控件类型的

25楼: 动态创建后为什么销毁时候程序回花屏呢?


答:显卡的显存会占用本机的内存和CPU使用率,销毁的时候出现大量的内存同时使用,包括cpu的100%占用,配置低的机器是非常容易花屏的!

26楼: 我觉得不是 可能是DELPHIDE的销毁机制问题 有好多数据是加载到内存中的 所以释放的时候可能慢点 现在我也很无奈

哪位大虾能给我指点一下DELPHI 的内存释放原理呢?

27楼: 我想是你在FreeAndNil的时候出现了问题!
你的控件是如何申明的?作用域是怎么样的?

仓库管理软件版28楼: vibox是公用的
释放的是vibox

29楼: 不好意思借宝地一用:
本人因临时改变计划 先将北京去乌鲁木齐T69的卧铺票两张卖出 时间是25号晚上7:24有意者请电话联系:13366991345 数量有限欲购者从速!!