Delphi
文章平均质量分 69
c_feers
这个作者很懒,什么都没留下…
展开
-
『Delphi和C++数据类型对照表』
『Delphi和C++数据类型对照表』 Delphi 字长/值域 C++ ShortInt 8位有符号整型 si...原创 2010-12-16 17:03:27 · 185 阅读 · 0 评论 -
Win32全局钩子在Delphi下实现的关键技术
<script type="text/javascript"></script>自15年前Windows 3.1推出以来,Win32全局钩子的实现始终是32位Windows程序设计中最富挑战性的课题之一。全局钩子可以捕获系统向应用程序发送的消息(比如键盘和鼠标操作、系统设置改变等等),因而被广泛地应用在各种商用应用软件中,其中又以金山词霸的“屏幕取词”功能最为国...原创 2011-05-12 17:02:05 · 153 阅读 · 0 评论 -
delphi 双进程守护
这是一个关于父亲与儿子的故事: 父亲的一生:①生一个儿子。如果儿子被杀了,再生一个! ②工作。 儿子的一生:等着父亲被杀,取而代之(成为父亲)。 这则故事已经完整地表达了我想要表达的全部思想,我们可以通过假设“父亲被杀了”或“儿子被杀了”来领会它。 废话少说,看源码: program Oliver; uses Windows; procedure WaitForAn...原创 2011-05-12 17:04:40 · 537 阅读 · 0 评论 -
Delphi图表控件TChart使用(收藏)
最近开发要使 用图表,Delphi里提供了图表开发的控件TChart,可惜帮助里没有DEMO代码,上网搜索了一下,竟然发现文章也少的可怜。没办法,自己丰衣足 食,写代码试用,看帮助,读代码,搞了半天大概弄明白了TChart的使用方式,下面写一下几个常见问题的解决。1.如何写一个TChart的Hello World?放一个控件到窗体上,然后写代码加入一个折线数据序列:varSeries: TLine...原创 2011-05-16 12:01:03 · 908 阅读 · 0 评论 -
Delphi 最小化到托盘
unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs,ShellAPI;constWM_BARICON=WM_USER+200;typeTForm1 = class(TForm)private procedure WMSysComman...原创 2010-09-29 09:30:54 · 169 阅读 · 0 评论 -
Delphi中安装第三方控件
基本安装 1、对于单个控件,Componet-->install component..-->PAS或DCU文件-->install; 2、对于带*.dpk文件的控件包,File-->Open(下拉列表框中选*.dpk)-->install即可; 3、对于带*.bpl文件的控件包,Install Packages-->Add-->b...原创 2011-06-05 21:03:27 · 184 阅读 · 0 评论 -
delphi VCL常用方法
begindrag 所有组件开始手工拖动bringtofront 所有组件将组件放在所有其他组件的前面canfocus 所有组件确定组件是否是否接收焦点clienttoscreen ...原创 2011-06-21 14:34:20 · 235 阅读 · 0 评论 -
delphi VCL常用属性
delphi VCL常用属性属性 使用范围说明action 一些组件标识与组件相连接的活动对象align 一些组件确定组件在父类组件区内的对齐方式anchors 大部分...原创 2011-06-21 14:35:48 · 127 阅读 · 0 评论 -
Delphi Component Palette 多行显示
1: 新建一个单元文件,复制如下代码,并保存名称为:MultiLinePaletteExpert.pasunit MultiLinePaletteExpert;interfaceusesForms, Controls, ComCtrls;implementationtypeTMultiLinePalette = classpublicprocedure ResizeComponentPalet...原创 2011-03-09 16:53:04 · 188 阅读 · 0 评论 -
Delphi TIniFile 用法
一、定义1、在Interface的Uses节增加IniFiles;2、在Var变量定义部分增加一行:myinifile:Tinifile;然后,就可以对变量myinifile进行创建、打开、读取、写入等操作了。二、打开INI文件 Filename:=ExtractFilePath(Paramstr(0))+'program.ini'; myinifile:=Tini...原创 2011-03-22 15:18:58 · 183 阅读 · 0 评论 -
关于Delphi中的application.ProcessMessages问题(处理事件)
关于Delphi中的application.ProcessMessages问题(处理事件)━━━━━━━━━━━━━━━━━━━━━━━━━━很多资料中提到,Delphi中的application.ProcessMessages相当于VB中的Doevents函数(转让进程控制),可是,在实际应用中,却不是这么回事。例: (VB Code) Private Sub Comma...原创 2011-03-22 17:28:01 · 820 阅读 · 0 评论 -
Delphi CreateFile 用法
HANDLE CreateFile( LPCTSTR lpFileName, // pointer to name of the file DWORD dwDesiredAccess, // access (read-write) mode DWORD dwShareMode, // share mode LPSECURITY_ATTRIBUTES lpSe...原创 2011-03-22 22:07:38 · 1242 阅读 · 0 评论 -
C/C++调用Delphi制作的dll时发现的一些问题
C/C++调用Delphi制作的dll时发现的一些问题 收藏 做了一个网络业务逻辑实体,是用C++编写的dll,内部有一个全局的业务实体,外部准备用Delphi编写的界面程序来控制并显示状态...... 1. C++的dll中不能用C++风格的导出方式:_declspec(dllexport)来导出函数,要用C风格的导出方式:extern "C" _declspec(dllexport),否则De...原创 2011-03-23 17:33:46 · 270 阅读 · 0 评论 -
(转)如何在 Delphi 中静态链接 SQLite
如何在 Delphi 中静态链接 SQLite 搞了我几个小时,终于成功在 Delphi 中静态链接了 SQLite (v3.5.4),下一步就是研究加密了,呵呵 中间其实遇到很多问题,今天累了,就不说了,改天补上 1.当然是下载 SQLite 的源代码啦,呵呵,不过记得要是 all in one 的 amalgamation 版本哦 (修正: amalgamation 并非 all in o...原创 2011-03-23 17:35:00 · 186 阅读 · 0 评论 -
delphi实现圆角窗体
procedure TForm1.FormCreate(Sender: TObject); var hr :thandle; begin hr:=createroundrectrgn(1,1,width-2,height-2,5,5); setwindowrgn(handle,hr,true); end; procedure TForm1.FormPaint(Sender: TObje...原创 2011-03-23 17:35:44 · 492 阅读 · 0 评论 -
堆和栈的区别
非本人作也!因非常经典,所以收归旗下,与众人阅之!原作者不祥! 堆和栈的区别 一、预备知识—程序的内存分配 一个由c/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回收 。注意它与数据结构中的堆是两...原创 2011-03-23 17:36:49 · 83 阅读 · 0 评论 -
C++数据类型与C#对应关系 c#调用WINDWOS API时,非常有用
C++ 输入输出 C# ==================================char chr[255] O StringBuilderKCA_DIR I intLPCSTR I stringint I intLPSTR ...原创 2011-03-31 11:16:29 · 111 阅读 · 0 评论 -
一种自动关闭对话框的简单方法
{******************************************************{ { 一种自动关闭对话框的简单方法 ...原创 2013-02-18 15:26:26 · 330 阅读 · 0 评论 -
获取 CPU 使用率
获取 CPU 使用率 unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, ExtCtrls, Gauges;type_SYSTEM_PERFORMANCE_INFORMATION = record ...原创 2011-05-12 16:53:51 · 138 阅读 · 0 评论 -
AcmIn/AcmOut 语音采集
AcmIn/AcmOut 语音采集 unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls, ACMOut, ACMConvertor, ACMIn;typeTForm1 = class(TForm) ...原创 2011-05-12 16:53:20 · 224 阅读 · 0 评论 -
delphi中TDBGrid的使用
procedure TMainForm.DBGrid1DrawColumnCell(Sender: TObject;const Rect: TRect; DataCol: Integer; Column: TColumn;State: TGridDrawState);var i :integer;beginif gdSelected in State then Exit;//定义表头的字...原创 2010-09-21 09:53:18 · 1555 阅读 · 0 评论 -
在Delphi中如何动态更改DBGrid的颜色
DBGrid控件是一个有许多用户接口的显示数据库的控件,以下的程序告诉您如何根据显示的内容改变字体的显示颜色。例如,如果一个城市的人口大于200万,我们就让它显示为蓝色。使用的控件事件为DBGrid.OnDrawColumeCell.procedure TForm1.DBGrid1DrawColumnCell(Sender: TObject; const Rect:TRect;DataCol:...原创 2010-09-21 09:54:54 · 221 阅读 · 0 评论 -
delphi的StatusBar状态控件调整字体大小颜色
最近在做一个小项目,是用delphi7 开发的,delphi刚学不久,也是自学的,应客户要求,状态栏的字体要变大一点,我在属性里面已经把字体调大了,但是F9运行以后还是不行,现在将方法贴出,以供参考。 1.找到 Statusbars.Panels 的属性编辑器 (点击Stat控件,在Object Inspector窗口的Panels属性,右边有个按钮),进去之后,将每个Panel...2010-09-21 10:04:39 · 1578 阅读 · 0 评论 -
浅谈Object Pascal的指针
大家都认为,C语言之所以强大,以及其自由性,很大部分体现在其灵活的指针运用上。因此,说指针是C语言的灵魂,一点都不为过。同时,这种说法也让很多人产生误解,似乎只有C语言的指针才能算指针。Basic不支持指针,在此不论。其实,Pascal语言本身也是支持指针的。从最初的Pascal发展至今的Object Pascal,可以说在指针运用上,丝毫不会逊色于C语言的指针。 以下内容分为八个部分...原创 2011-05-03 10:36:03 · 78 阅读 · 0 评论 -
Delphi6函数大全
Delphi6函数大全(1) <<Delphi6函数大全1-StrUtils.pas>> 首部 function AnsiResemblesText(const AText, AOther: string): Boolean; $[StrUtils.pas功能 返回两个字符串是否相似说明 ANSI(American National Standards Instit...原创 2011-05-03 11:08:49 · 134 阅读 · 0 评论 -
DELPHI基础开发技巧
DELPHI基础开发技巧◇[DELPHI]网络邻居复制文件uses shellapi;copyfile(pchar('newfile.txt'),pchar('//computername/direction/targer.txt'),false);◇[DELPHI]产生鼠标拖动效果通过MouseMove事件、DragOver事件、EndDrag事件实现,例如在PANEL上的LABEL:var x...原创 2011-05-03 11:25:29 · 310 阅读 · 0 评论 -
如何让控件在编译时,自动添加所需的单元
在开发控件的时候,常会类似碰到这样的情况:我某个方法或事件的参数的类型,并不在Delphi默认添加的单元中,如果此时直接编译,必然会报错。但是让用户逐个把所需的单元添加回来,又显然太麻烦了,甚至用户也不知道该添加哪些单元。有没有办法让它自动化一点,在编译时,让控件自动给单元添加所需的单元呢?答案是肯定的。 首先引用DesignEditors和DesignIntf单元。然后在控件单元,编写一个继承自...原创 2011-05-04 14:47:40 · 90 阅读 · 0 评论 -
用两种方法快速简单的实现窗口淡入淡出 收藏
用两种方法快速简单的实现窗口淡入淡出 收藏在应用程序中引入图片淡入及淡出,可以让用户界面更加美观。以前报刊杂志中介绍的常用方法有两种:一是自己写程序,诸个象素进行混合渐变;二是使用DirectX,建立一个带Alpha通道的Surface。第一种,效果可以自己控制,但比较麻烦,而且一般不容易生成硬件优化的代码;第二种速度很快,却需要使用DirectX库。 本文结合Delphi实例代码...原创 2011-05-04 15:16:25 · 213 阅读 · 0 评论 -
通俗讲解对象和接口(转贴)
最近,还是看到很多人在问对象和接口的问题。我原本以为,这已经不是个问题了,但是现在看来,它还困扰这很多程序员。 其实这个问题很简单,举例说明吧: 你是一个对象,继承自你的父母,你的gf也是一个对象,继承自她的父母,只有你和你的gf发生关系(比如打kiss)的时候,才会出现接口。这是接口的本质,接口就是一个对象要和另外一个对象发生关系时的协议。 很多误导人的书,把接口说成是为了解决...原创 2011-05-04 15:19:42 · 98 阅读 · 0 评论 -
Delphi连接数据库通用方法
DELPHI 连接数据库是个头痛的问题,现在我写了个通用方法,由一个配置工具和一个配置文件实现数据库连接并且可以加密字符串,有需要的留下邮箱,发给你。 1.新建一个窗体,放置5个控件,(TADOConnection的ConnectionString属性不需要指定连接字段)如下: dbgrd1: TDBGrid; ADOConnection: TADOConnection; ...2011-05-04 17:17:29 · 741 阅读 · 0 评论 -
delphi 标题栏字体改变以及 自己制作标题栏时鼠标拖动窗体代码
一. 标题栏字体的改变。 1.定义方法 procedure WMNCPAint(var Mes : TWMNCPaint); message WM_NCPAINT;2. 增加如下方法:procedure TMainFrm.WMNCPAint(var Mes : TWMNCPaint);varACanvas : TCanvas;begin ACanvas := TCanvas.Cr...原创 2010-09-24 12:51:26 · 832 阅读 · 0 评论 -
Delphi用BusinessSkinForm 做界面皮肤的使用说明
注意:新版的Delphi 已经用bsCompressedStoredSkin 代替了bsStoredSkin 1、先放bsBusinessSkinForm、bsSkinData、bsStoredSkin(bsCompressedStoredSkin)各一个到窗体上2、修改bsBusinessSkinForm的SkinData属性为bsSkinData13、修改bsSkinData1...原创 2010-09-26 16:26:18 · 574 阅读 · 0 评论 -
格式化数字字符串输出的一个小技巧
我这里分别以VC和Delphi举例:比如想生成 000005,000255 这样的字符串先看VC的: int i=5; CString strOut; strOut.Format("%.6d",i); AfxMessageBox(strOut); i=255; strOut.Format("%.6d",i); AfxMessageBox(strOut);类似的,Del...原创 2011-05-12 16:42:12 · 116 阅读 · 0 评论 -
Delphi 调用控件的过程,初学者都想知道
假设有过程:procedure TForm1.Button1Click(Sender: TObject);begin ShowMessage('cfeers 你好');end;想在 FormCreate 时候调用,怎么调用?办法是:procedure TForm1.FormCreate(Sender: TObject);begin Button1Click(Sende...原创 2011-05-12 16:46:00 · 165 阅读 · 0 评论 -
利用远程线程注入DLL (DELPHI版)
研究外挂3个多月了~发现写一个完整的外挂,注入是少不了的,找了几篇不错的转来~和我一样的新手们可以看看,高手就当复习吧。呵呵。SDK文档里是这样描述的:进程是一个正在运行的程序,它拥有自己的地址空间,拥有自己的代码,数据和其他系统资源.一个进程包含了一个或者多个运行在此进程内的线程. 从定义上看出进程一定要有线程,线程是进程内存中的独立实体. 线程插入技术就是把一个线程弄到别的进程中执行的技术...原创 2011-05-12 16:50:43 · 372 阅读 · 0 评论 -
Delphi ActionList详解
一个友好的用户界面,必须具有下拉菜单,弹出菜单,工具条和快捷键。同样一个功能,程序员可能要提供几种操作方式,如文本拷贝,菜单命令&Copy,快捷键Ctrl+C,工具条上的拷贝按钮,都是程序员提供给用户的操作,可以大大方便了不同层次的用户。但是,多增加一种操作方式,就意味着增加响应事件的代码,还有,实现统一功能的多个操作必须一致,如剪切板上不为空的时候,菜单命令,快捷键,按钮,都是可以选择的...原创 2011-05-12 16:51:29 · 271 阅读 · 0 评论 -
哥德巴赫猜想的delphi7程序代码
unit Unit1;interfaceusesWindows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,Dialogs, StdCtrls;typeTForm1 = class(TForm) lbl1: TLabel; lbl2: TLabel; btn1: TB...原创 2011-05-12 16:52:38 · 211 阅读 · 0 评论 -
使用Delphi编写自动关闭Windows信使服务窗体程序
使用Delphi编写自动关闭Windows信使服务窗体程序 Windows信使服务是Windows为了方便尽心系统管理而设置的一项工具,初衷是很好的可以使得管理员方便的在局域网内发布消息给各个用户。 可是却常常被一个菜的不能再菜的家伙利用,到处扰乱别人的学习和生活。每每让人在用电脑的同时突然弹出一个确认对话框。如果只是在办公的还好,尽管是最上层窗口,只要关闭了即可。可是如果是在...原创 2013-02-18 15:27:15 · 250 阅读 · 0 评论