内容列表
VCL源码分析方法论
   最近一段时间似乎流行源码分析:)我也来谈谈在过去一段时间里对VCL源码的分析方法方面的一点体会,本文将不探讨VCL类库的构架和设计模式方面的东本,只是以我们常见的控件属性/方法的实现过程作简单的说明,希望对初学者有所帮助VCL分析方法例:TButton.Caption属性的由来(本文仅以此献给DELPHI初学者)   用过一段时间DELPHI的朋友,都
分类:Delphi 查阅全文
回调函数与Delphi的事件模型
回调函数与Delphi的事件模型   回调函数: 回调函数是这样一种机制:调用者在初始化一个对象(这里的对象是泛指,包括OOP中的对象、全局函数等)时,将一些参数传递给对象,同时将一个调用者可以访问的函数地址传递给该对象。这个函数就是调用者和被调用者之间的一种通知约定,当约定的事件发生时,被调用者(一般会包含一个工作线程)就会按照回调函数地址调用该函数。 这种方式,调用者在
分类:Delphi 查阅全文
源代码的学习(如何学习)
源代码的学习 1. 画出整个程序的流程图,理解整个程序流程的思想。画流程图的方式更让人很直接 的理解程序的整体流程,而不会被代码所干扰,让程序员总体上把握整个程序。 2. 对流程各节点(函数或过程)的理解。流程的每一节点是构成整个流程的不可缺少的部份。 3. 再把流程和流程各节点串起来理解整个程序,可能的话最好写出读书笔记。 4. 如果想深刻的学习到源代码的精髓所在,请写一个相近的程序进行
分类:Delphi 查阅全文
QQ尾巴病毒的另一种实现
前几天看到 wuqiu 兄 把 QQ尾巴病毒模拟了一遍, 我觉得通过查找窗体标题,不太合常理 回去用SPY++来查看了一下,原来,QQ的框架是这样的   其中,#32770(对话框)就是弹出的QQ聊天界面;内部的控件就如上图显示的那样,有Static(标签)、Button(按钮)、AfxWnd42(这个我猜类似panel的容器)、RICHEDIT(这里面就是显示我们
分类:Delphi 查阅全文
DELPHI实现activex控件的限制
   个人认为DELPHI实现activex控件的限制存在于DELPHI的activex控件的基类派生于TAutoObject如下: TActiveXControl = class(TAutoObject,    IConnectionPointContainer,    IDataObject, 
分类:Delphi 查阅全文
如何用编程实现TDateTimePicker的24小时制到12小时制的转换?
昨天有一位网友在群聊中提到了这个问题,晚上回去想了很久。花了三个小时,终于找到了解决的方法,现在拿出来与大家分享:   首先想到的是TDateTimePicker控件有没有属性来实现这一功能的转换,因为这样做的好处不言而知。在我看了TDateTimePicker、TCommonCalendar这两个类的源码后得出了结论,不能用控件的属性或过程来实现这一转换。  于是只好改变思
分类:Delphi 查阅全文
一个实际的OLE服务器的开发和使用
一个实际的OLE服务器的开发和使用 先行知识:Delphi /COM/OLE Automation/ SQL Server 难度:★★☆☆☆   在前几篇文章中我们已经讨论过关于VCL和OLE的知识。在这篇文章中我们将完成一个比较有实际意义的OLE Automation服务器程序,最后我们把他们封装为Delphi中使用的VCL组件。 首先我们来做一个实际的程序,在它没有变为服务
分类:Delphi 查阅全文
状态栏显示进度条
{*******************************************************}{                       &nbs
分类:Delphi 查阅全文
Delphi中的线程类--之(1)
Delphi中的线程类   猛禽[Mental Studio] http://mental.mentsu.com ( 之一) Delphi中有一个线程类TThread是用来实现多线程编程的,这个绝大多数Delphi书藉都有说到,但基本上都是对TThread类的几个成员作一简单介绍,再说明一下Execute的实现和Synchronize的用法就完了。然而这并不是多线程编
分类:Delphi 查阅全文
Delphi中的线程类--之(3)
Delphi中的线程类   猛禽[Mental Studio] http://mental.mentsu.com   之三 说完构造函数,再来看析构函数: destructor TThread.Destroy; begin   if (FThreadID <> 0) and not FFinished then   begin
分类:Delphi 查阅全文
Delphi中的线程类--之(4)
Delphi中的线程类   猛禽[Mental Studio] http://mental.mentsu.com   之四 临界区(CriticalSection)则是一项共享数据访问保护的技术。它其实也是相当于一个全局的布尔变量。但对它的操作有所不同,它只有两个操作:Enter和Leave,同样可以把它的两个状态当作True和False,分别表示现在是否处于临
分类:Delphi 查阅全文
Delphi中的线程类--之(5,大结局)
Delphi中的线程类   猛禽[Mental Studio] http://mental.mentsu.com   之五(大结局) 回到前面CheckSynchronize,见下面的代码: function CheckSynchronize(Timeout: Integer = 0): Boolean; var   SyncProc: PSyncP
分类:Delphi 查阅全文
办公之星控件在Delphi里的使用
    办公之星控件是深圳智岛软件公司推出来的一款基于图文混排的文档处理控件(类似Word的控件),办公之星控件完全封装了办公之星的文字、图形、表格、图表等功能,提供了几百个编程接口;在ERP、CRM、HR、OA等系统里,开发难度非常大的文档处理、统计、报表等输出功能都可由办公之星控件轻松实现,其所见即所得的效果跟现实里的完全一样。办公之星控件适用于Windows环境的各种开发
分类:Delphi 查阅全文
一个新算法的表达式求值的函数
我经过思考,自已做了一个表达式求值的函数,与标准算法不同,这是我闭门造车而成的,目的在于求简单。我这个函数有两个BUG,我目前已懒得改,当然是可以改的,一个是小数点0.999999999。。。。。未自动消除为1,二是本来乘法与除法是同级的,我这是成了乘法高级过除法。时间匆忙,来不及多说,让读者看了再说吧。另辟溪径也许有利于开拓新思路吧。我的邮箱是[email protected] interface
分类:Delphi 查阅全文
Delphi中的线程类--之(2)
Delphi中的线程类   猛禽[Mental Studio] http://mental.mentsu.com   之二 首先就是构造函数: constructor TThread.Create(CreateSuspended: Boolean); begin   inherited Create;   AddThread; &n
分类:Delphi 查阅全文
制作QQ消息炸弹
QQ聊天机器人随想 原作:hottey(阿风)   前几日,看到杂志上有一篇关于开发QQ聊天机器人的文章。谈到了对QQ循环发送消息内容,感觉倒也很好玩,于是拿起Delphi开始了我的QQ聊天机器人之路。  首先要明白自己要做什么,大家都用过QQ,知道给别人发送消息的整个过程吧!要实现循环发送消息的功能该有以下几个条件:  1.必须是在聊天模式里进行。这样发送完一条消息后,QQ窗体还存在。  2
分类:Delphi 查阅全文
图像放大漫游攻略
图像放大漫游攻略   我想大家应该都用过 ACDSee 或者 Windows XP,它们都支持图像的放大和漫游,虽然网上也有相关的资料,但是都不是很全面,今天我给大家介绍一种方法,由于篇幅的关系,主要讲如何实现,尽量做到言简意赅,好了,我们现在就开始。说明:1.本文使用 Object pascal 进行描述,请读者自行转换为相关的代码,作者尽量做到与代码无关2.涉及到图像操作,尽量使用 Wind
分类:Delphi 查阅全文
C++Builder/Delphi中透明Panel及透明窗口的实现方法
    可能大多数程序员会问:透明窗口,特别是透明Panel有什么应用价值呢?可别小看它们哦,下面我就来讲讲他们的巨大作用。     (1)透明窗口可以用于软件界面特效。大家可以看到很多软件的窗口出现或退出的时候是渐进或渐出的,而并非象Win98那样直接弹出窗口。这就是Win2000下所提供的功能。实现方法很简单:  &nb
分类:Delphi 查阅全文
走进Borland!
                                 &n
分类:Delphi 查阅全文
Delphi 8 for .net 第一时间 之 分析篇
Delphi 8 for .net 第一时间 之 分析篇     _________________________________________________________________________    本文章只是作者这两天试用D8并对VCL.net源码稍微查看了一下,作出的一些分    析判断,时间
分类:Delphi 查阅全文
<< 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 >>