
Delphi
文章平均质量分 74
henreash
Think Differently.
展开
-
FIBPlus事务
InterBase/Firebird中的事务:在FIBPlus中的应用(第一部)引言事务在InterBase/Firebird(及其他数据库服务器)的多用户环境下是非常重要的课题.程序员大多无视任务的环境而直接使用READ COMMITTED隔离级别.我将讨论在FIBPlus控件中使用事务以及特性. 除了InterBase语言参考、嵌入式SQL指南、API指南及Helen Borr翻译 2012-02-07 10:10:29 · 2596 阅读 · 0 评论 -
在Delphi中使用C++对象
Delphi是市场上最好的RAD工具,但是现在C++占据着主导地位,有时针对一个问题很难找到Delphi或Pascal的解决方案.可是却可能找到了一个相关的C++类.本文描述几种在Delphi代码中使用C++类的方法.Delphi is one of the greatest RAD tools on the market, but it in this currently C++-domin翻译 2012-03-14 11:55:02 · 5002 阅读 · 0 评论 -
调用OpenCV的cvFindContours方法获取图像边界
//得到图像的外边框 procedure TFrmMain.Button3Click(Sender: TObject);var oImg, oImg2: PIplImage; contours: PCvSeq; p: Pchar; pSeq: PCvSeq; oMem: TCvMemStorage; I, nCnt, area: Integer;原创 2012-04-20 10:36:40 · 13209 阅读 · 0 评论 -
OpenCv调整图像大小及仿射变换(旋转)
缩放:procedure TFrmMain.BtnResizeClick(Sender: TObject);var pImg: PIplImage; pDst: PIplImage;begin if not OpenDialog1.Execute then Exit; pImg := cvLoadImage(PChar(OpenDialog1.FileName)原创 2012-04-25 11:53:51 · 6339 阅读 · 0 评论 -
使用OpenCv的cvMinAreaRect2函数获取轮廓的可倾斜最小矩形区域
procedure TFrmMain.BtnFreeManClick(Sender: TObject);var oImg, oImg2, oImg3: PIplImage; contours: PCvSeq; p: Pchar; pSeq: PCvSeq; oMem: TCvMemStorage; I, nCnt, nMaxArea, total: Inte原创 2012-04-26 09:43:15 · 8095 阅读 · 2 评论 -
运行Dos命令并得到dos的输出文本
function RunDOS(const CommandLine: string): string;var HRead, HWrite: THandle; StartInfo: TStartupInfo; ProceInfo: TProcessInformation; b: Boolean; sa: TSecurityAttributes; inS: TH转载 2011-12-22 15:57:05 · 3887 阅读 · 1 评论 -
使用GDI+绘制的360风格按钮控件
将下面的代码拷贝到一个单元中,创建一个包,加入这个单元后安装.使用的时候设置好背景颜色,边框颜色,图标(png格式)相对路径的文件名称.这个控件可以利用PNG图像的颜色透明特性,背景色默认透明度为50%,可以将按钮后面的内容显示出来.GDIPAPI, GDIPOBJ, GDIPUTIL三个单元可用万一的博客上寻找下载地址.unit u360StyleButton; int原创 2012-05-16 11:03:25 · 6774 阅读 · 1 评论 -
多线程中触发的事件函数在哪个线程中执行的测试
在多线程开发中,如果在多线程中访问主线程创建的对象,并触发了这个对象的事件,将会执行这个事件的处理函数,那么这个处理函数是在主线程中执行还是在触发事件的线程中执行呢?针对这个问题做了一下测试,如果没有通过Windows消息触发事件,则在子线程(触发事件的线程)中执行事件处理函数,如果是由Windows消息触发的事件,则由主线程执行事件处理函数.这是因为Windows消息只由创建控件的线程进行处理,原创 2012-06-17 10:31:43 · 3410 阅读 · 0 评论 -
OpenCv求直方图及直方图均衡化
procedure TFrmMain.BtnHistogramClick(Sender: TObject);var pHist: PCvHistogram; sFileName: string; pImg, pHistImg: PIplImage; nHistogramBins: Integer; HistogramRange1: array[0..1] of S原创 2012-06-14 11:45:39 · 4588 阅读 · 0 评论 -
Delphi组件编辑器
看到Dev中的cxGrid组件的编辑器很强大,于是很想探究一下,跟踪cxGrid的代码比较麻烦,但原理大概知道一二.首先来研究一下设计器双击cxGrid弹出一个编辑窗体,选择窗体中的一个内容后,属性编辑器中的内容也随着变化.有了这个特性,对于控件中的一些复杂成员(继承于TPersistent类),如果需要对其进行设置,可以简化为在属性编辑器中进行.cxGrid的代码过于复杂,看看同样效果的标准控件原创 2012-03-20 09:56:49 · 4666 阅读 · 0 评论 -
Delphi中使用cvHoughLines2获取图像的边界坐标
var img: PIplImage; smt: PIplImage; iot: PIplImage; i: Integer; threshold_type: Integer; adaptive_method: Integer; block_size: Integer; offset: Double; value: PInteger; s原创 2012-04-06 08:47:46 · 2610 阅读 · 0 评论 -
Delphi的指针
Pointers are like jumps, leading wildly from one part of the data structure to another. Their introduction into high-level languages has been a step backwards from which we may never recover. — Anthon翻译 2012-03-19 11:24:38 · 13333 阅读 · 0 评论 -
FIBPlus:处理数据库错误
FIBPlus:处理数据库错误FIBPlus的最大优势就是其数据库错误处理机制。本文我们将详细阐述. 处理错误的主要组件是TpFibErrorHandler.使开发者可以集中处理错误.错误处理的准备工作我们使用FIBPlus很多范例都使用的数据库来演示这个功能.使用其中的两个表:TREFCOUNTRY和PERSON,定义如下:CREATE TABLE TREFCOUNTRY (翻译 2012-01-17 14:12:23 · 3613 阅读 · 0 评论 -
FIBPlus:使用独特的主细表机制访问InterBase
在谈论技术细节前首先说说FIBPlus.这是Delphi,BCB和Kylix的原生组件库,帮助开发者通过InterBase API与InterBase高效率的交互,其同样适用于FireBird和Yaffil.这意味着使用FIBPlus开发者可以使用所有Interbase的功能:完全的事务控制,最高的速度,特殊的InterBase特性(如数组字段类型)等等.除了上面提到的,FIBPlus控件绝对与数翻译 2012-02-07 09:41:16 · 2204 阅读 · 0 评论 -
FIBPlus事务2
InterBase 和 Firebird服务器事务和FIBPlus支持FIBPlus是Delphi,BCB和Kylix的快速,灵活和高效的组件库.直接使用InterBase API函数操作InterBase和FireBird.本文基于Michael Zhuravlev (mikus@mail.ru)所写的文章InterBase 和 Firebird服务器事务的模式Interbase翻译 2012-02-07 10:12:18 · 1466 阅读 · 0 评论 -
Delphi的组件读写机制
Delphi的组件读写机制(一) 一、流式对象(Stream)和读写对象(Filer)的介绍在面向对象程序设计中,对象式数据管理占有很重要的地位。在Delphi中,对对象式数据管理的支持方式是其一大特色。 Delphi是一个面向对象的可视化设计与面向对象的语言相结合的集成开发环境。Delphi的核心是组件。组件是对象的一种。Delphi应用程序完全是由组件来构造的,因此开发高性能的De转载 2012-02-20 09:40:27 · 1524 阅读 · 0 评论 -
测试Delphi控件属性保存到dfm
控件单元代码:unit TstControl;interfaceuses Classes, SysUtils, Controls;type //定义控件的属性类型 类型中的published方法可以自动保存到dfm中 TAuthorInfo = class(TPersistent) private FAuthorName: string;原创 2012-02-21 16:56:27 · 3379 阅读 · 0 评论 -
Delph组件如何使用自己的图标
用Delphi开发的的组件如何使用自己设置的图标呢?它里面又有什么奥秘呢?.组件使用自己的图标要进行以下几步: (1)知晓组件的信息: 我要注册的组件名为TNWTReport,在NWTReport.pas单元中. (2)制作一个和你的组件所在的单元文件同名的dcr文件,这里即为NWTReport.dcr,在该文件中添加一个24*24的BITMAP文件,名称一定要与你的组件名称一致,且全部大转载 2012-02-27 15:28:08 · 2641 阅读 · 0 评论 -
Delphi调用C++导出的类
打开VS2008创建一个dll项目(创建了一个QT Library项目),新建头文件q4dapplication.h定义纯虚类:#ifndef Q4DAPPLICATION#define Q4DAPPLICATION class Q4DApplication { public: virtual int exec() = 0; };#endif新建头文原创 2012-03-14 15:10:01 · 4620 阅读 · 1 评论 -
Delphi引用C对象文件
C语言应用非常广泛,并在世界各地拥有大量的代码库.这些代码库与Delphi的可比性较小,因此如果我们无需转换为Delphi代码而可以直接使用这些库的部分代码就完美了.幸运的是,Delphi允许连接到C编译出来的对象文件.但这里有” unsatisfied externals”问题.C is a very widely used language, and this has made the w翻译 2012-03-15 16:29:54 · 5181 阅读 · 0 评论 -
OpenCV角点检测
原图:函数cvCornerHarris 在Delphi中测试cvCornerHarris,报错,而且使用默认参数去调用函数无法检测出脚点.查资料发现如果输入的是灰度图像,则输出图像必须是单精度浮点图像.即创建输出图像时需要使用IPL_DEPTH_32F格式.而且要得到图像的角点,必须逐个测试参数,找到与图像相匹配的参数值.It seems like you are using a原创 2012-07-18 10:37:08 · 5250 阅读 · 0 评论 -
OpenCV2.3库翻译为Delphi--函数导入
(********************************************************************* * * * Borland Delphi 4,5,6,7 API for原创 2011-11-29 16:01:13 · 4718 阅读 · 1 评论 -
OpenCv霍夫圆变换(cvHoughCircles)测试程序
为了更好的测试OpenCV中cvHoughCircles函数的功能和各个参数作用,使用Delphi生成了一个工程,利用Trackbar调整各个参数,每次调整都调用一次cvHoughCircles函数比便于对比参数的效果.OpenCV作为开源项目,文档不够详细,每个函数的参数都只是做了简要的说明,在不同的实际应用中,有必要对函数中的每个参数进行系统测试,才能得到自己能体会的作用.unit Mai原创 2012-10-21 15:08:23 · 6083 阅读 · 2 评论 -
eclipse如何导入sql server2005中的jar包
在Eclipse中连接SQL Server 2005数据库最近因为开发活动需要,用上了Eclipse,并要求使用精简版的SQL数据库(即Sql server 2005)来进行开发项目 *1.准备工作: 准备相关的软件(Eclipse除外,开源软件可以从官网下载). Microsoft SQL Server 2005 Express Edition (Service Pack 2).转载 2013-12-29 00:04:58 · 8985 阅读 · 0 评论 -
使用Delphi声明C++带函数的结构体实战
在小组开发中,应用程序部分采用Delphi7,一些组件使用C++做。在今天将一个动态库的C++接口声明头文件转换为D7的Unit单元时,一切都很顺利,直到遇到下面这样一个另类的东西:typedef struct tagRecord{ int val; int getvalplus() { val++; return val; }}TRecord, *转载 2014-05-08 15:53:28 · 4041 阅读 · 2 评论 -
绘制FastMM内存分配流程图(小块内存分配)
原创 2014-08-22 09:53:49 · 1994 阅读 · 0 评论 -
Delphi创建WebService部署到Apache
从Apache官网下载httpd2.2版本,安装。网上说安装后把安装目录原创 2014-10-10 15:13:29 · 5424 阅读 · 2 评论 -
Delphi xe7并行编程快速入门
现在多数设备、计算机都有多个CPU单元,即使是手机也是多核的。但要在开发中使用多核的优势,却需要一些技巧,花费时间编写额外的代码。好了,现在可以使用Delphi做并行编程了。在Delphi、C++ Builder和RAD Studio XE7中,有一个简化并行运行任务的库,叫做并行编程库。并行编程库在System.Threading单元中,其中提供了很多有用的特性,可方便的应用在已有项目和新项目中翻译 2014-11-20 16:19:34 · 9661 阅读 · 1 评论 -
使用XE7并行库中的TTask
上篇文章学习使用System.Threading单元提供的并行编程和TParallel.For提升循环的执行效率。当需要运行多任务而不是一个循环时,也可以使用并行库。使用System.Threading.TTask和System.Threading.ITask可方便的串行执行几个进程.TTask类可以通过ITask接口实例来创建和管理进程的交互.在代码处理任务前可以使用WaitForAll或Wai翻译 2014-11-22 21:13:31 · 6279 阅读 · 2 评论 -
使用XE7并行库中的TTASK.IFUTURE
上篇文章讲了使用TTask快速开发同时运行多个任务的应用程序,减少瓶颈。接下来讲解ITask的子接口IFuture。IFutureIFuture给TTask提供了一个机制,让我们可以传递返回特定类型的函数(使用了泛型,类型由决定)。使用IFuture实例,运行一个任务,同时让主线程继续执行到我们需要任务运行结果处。使用这种机制可以把代码块按优先级执行,同时也保证在需要的时候获取到任务的运行结果。范翻译 2014-11-22 21:13:31 · 4035 阅读 · 0 评论 -
CreateCompatibleDC,CreateCompatibleBitmap,SelectObject详解
物理HDC 设备底层会拥有显存等资源,但是兼容DC并没有给图像像素提供内存空间,因此兼容DC总是和BITMAP配合使用,这样一来,兼容DC就利用BITMAP的图像像素数据空间给自己提供类似于显存的内存空间.这样有很多好处,以来我们可以在加载图片后,在图片上利用DC的各种绘图功能.请看如下示例:兼容DC在建立之初,只有1*1像素的尺寸,SelectObject选择bitmap以后才可转载 2013-11-22 17:36:21 · 5263 阅读 · 0 评论 -
Delphi动态申请数组内存的方法
不使用SetLength,采用和C相似的方式。procedure TForm1.Button1Click(Sender: TObject);type TArr = array [0..0] of Integer; PArr = ^TArr;var arr: PArr; i: Integer;begin GetMem(arr, 100); for原创 2013-11-07 15:34:55 · 3189 阅读 · 0 评论 -
Delphi SelectSingleNode的使用 根据节点属性获取该节点
unit Unit1; interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, xmldom, XMLIntf, msxmldom, XMLDoc, msxml,StdCtrls;type TForm1 = class(TF转载 2013-11-19 16:45:20 · 3484 阅读 · 0 评论 -
OpenCV2.3库翻译为Delphi--公共类型
(* INTEL CORPORATION PROPRIETARY INFORMATIONThis software is supplied under the terms of a license agreement ornondisclosure agreement with Intel Corporation and may not be copied原创 2011-11-29 16:02:04 · 3301 阅读 · 1 评论 -
Delphi数据类型===转自万一的blog
分类范围字节备注简单类型序数整数Integer-2147483648 .. 21474836474有符号32位Cardinal0 .. 42949672954无符号32位Shortint-128 .. 1271有符号8位Smallint-32768 .. 327672有符号16位转载 2012-07-23 16:52:53 · 1454 阅读 · 0 评论 -
SuperObject
What is JSON ?JSON (JavaScript Object Notation) is a lightweight data-interchange format.It is easy for humans to read and write. It is easy for machines to parse and generate. It is based on转载 2013-09-29 10:35:42 · 4112 阅读 · 0 评论 -
Delphi不规则窗体实现
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, dxGDIPlusClasses, StdCtrls, Menus, ExtCtrls;type TForm1 = class(TForm) PopupMenu1: TP...原创 2018-03-21 13:45:50 · 1188 阅读 · 0 评论 -
Delphi2007的新语法测试
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Button2: TBU原创 2012-02-03 11:28:33 · 1523 阅读 · 0 评论 -
Delphi向Word导出数据
最近客户要求将数据导出到word,查找了一些源代码后做出来了.先将方法共享出来.希望对大家有用. procedure TFrmWeekAnalysisQry.BtnExportToExcelClick(Sender: TObject);var wordApp,WordDoc,WrdSelection:variant; strAdd:string; i,j,iRangeEnd,iStart,原创 2008-03-28 18:00:00 · 4781 阅读 · 1 评论 -
Delphi经典网站收藏
http://delphi.icm.edu.pl/ 波兰的Delphi控件网站http://dev.rdxx.com/Delphi/ 国内的编程网站 非常全面http://oracle.chinaitlab.com/ Orcale经典网站http://www.prolaz-team.info/forum/ 俄罗斯Delphi网站http://www.pediy.com/原创 2008-11-05 10:30:00 · 1928 阅读 · 0 评论