当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: 在Delphi程序设计中,我们需要通过解除建立的所有对象来避免内存泄 漏。
 

 

 ·delphi 4.0换肤    »显示摘要«
    摘要:湖南刘炼 现在软件的界面设计很流行“换肤”(skin),例如icq、winamp、超级解霸等等。这种技术 的应用可以最大程度的彰显用户的个性,所以一经推出就大受欢迎。其实这种技术实现起来很简 单,下面就是我用delphi 4.0换肤的例子。   首先,在窗体上放一个image控件,一个button控件和一个opendialog控件。   然后,修改属性。将窗体的caption属性......
 ·给控件添加onmouseleave事件    »显示摘要«
    摘要:需要在鼠标离开的时候得到通知吗?看看以下的代码,也许会有帮助。你可以把timage换成其它控件。关键在于对cmmouseleave消息的处理。 unit main; interface uses windows, messages, sysutils, classes, graphics, controls, forms, extctrls; type tmyimage = ......


Delphi中对象解除技巧
 在delphi程序设计中,我们需要通过解除建立的所有对象来避免内存泄

漏.但是,如果你在程序中不谨慎小心的话,很容易多次解除同一个对象, 【程序编程相关:用Timer实现定时运行

【推荐阅读:在DElphi中的DataGrid怎样使

这将会引起很严重的错误,造成应用程序崩溃,甚至是死机. 【扩展信息:修改的一个导出DataSet到xls的单

  请看下面的程序:

  procedure tform1.button1click(sender:tobject);

  var

   button2,button3:tbutton;

  begin

   button2:=tbutton.create(self);

   button3:=tbutton.create(button2);

   button2.free;

   button3.free;

  end;

  在上例中,当执行到button3.free时会产生一个错误,因为在调用

button2.free时,button2被解除,但因为button2是button3的宿主,button3

也同时被解除,因此错误就不可避免地发生了.

  要避免上述错误,有两种方法:第一,在解除宿主之前要先解除其所属的

所有组件.
...   下一页
    摘要: function winexecexw(cmd,workdir:pchar;visiable:integer):dword; var startupinfo:tstartupinfo; processinfo:tprocessinformation; begin fillchar(startupinfo,sizeof(startupinfo),#0); startupinf......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE