01 2012 档案
TEdit扩展:做成多按钮的Edit,可用作浏览器地址栏
摘要:TEdit是经常使用的组件,但其功能不能满足开发要求,虽然高版本的Delphi已经提供一个TButtonEdit组件,但这个组件提供的按钮数量较少,于是本人模仿这个组件,做了一个支持4个按钮的TEdit扩展组件,在Delphi XE下测试通过。主要代码如下:unit UWSIEAddress;interfaceuses SysUtils, Classes, Controls, StdCtrls,ImgList,Messages,Menus,themes,Forms, Windows,Dialogs,RegularExpressions,Registry,ShellAPI;const AltID 阅读全文
posted @ 2012-01-08 15:18 金山野狼 阅读(933) 评论(1) 推荐(1)
在使用TStringlist谨慎使用For循环
摘要:由于习惯于使用For循环,笔者在开发时遇到奇怪的问题。在TTabset组件管理大量对象时使用了类似下面的语句For I:=0 to aTabSet.Tabs.Count-1 dobegin TObject(aTabSet.Tabs.Objects[I]).Free; aTabSet.Tabs.Delete(I);end;乍一看没问题,编译,运行,结果出错啦!找了半天的原因,在发现,如此操作,Tabs.Count都已经发生了变化,I值已经超出Count的范围,不出错才怪!后来改用了While循环,终于不出错啦。研究了一下,如果非要用For循环的话,可以这样写:For I:=aTabSet.T.. 阅读全文
posted @ 2012-01-06 00:50 金山野狼 阅读(753) 评论(9) 推荐(0)