Delphi
文章平均质量分 74
henreash
Think Differently.
展开
-
股票价格指数
股票价格指数 股票价格指数简介 股票价格指数即股票指数。是由证券交易所或金融服务机构编制的表明股票行市变动的一种供参考的指示数字。由于股票价格起伏无常,投资者必然面临市场价格风险。对于具体某一种股票的价格变化,投资者容易了解,而对于多种股票的价格变化,要逐一了解,既不容易,也不胜其烦。为了适应这种情况和需要,一些金融服务机构就利用自己的业务知识和熟悉市场的优势,编制出股票价格指数,原创 2008-11-17 17:39:00 · 1918 阅读 · 0 评论 -
CXGRID问题大荟萃---收藏转贴
公司目前这个项目要大量的用CxGrid,以前我从未用过,所以被逼得焦头烂额.加之我用的这电脑系统貌似有问题(老出些莫明其妙的事儿,如:突然不能编译出exe,上班开机突然丢失大堆的DLL文件,F9执行后关掉EXE Delphi就死掉了...)有时候做得想骂娘. 现在特将收集的一些文章与大家分享,也希望大家不要重蹈我的覆辙. http://www.delphibbs.com/keylife/ib转载 2008-12-05 17:16:00 · 2470 阅读 · 0 评论 -
RemObjects Pascal Script使用說明 (转载)
RemObjects Pascal Script使用說明 (转载)2007-09-20 11:19来源: http://blog.csdn.net/truexf/archive/2007/02/28/1516749.aspx翻譯這篇文章源於我的一個通用工資計算平台的想法,在工資的計算中,不可避免的需要使用到自定義公式,然而對於自定義公式的實現,我自己想了一些,也在網原创 2008-12-15 13:28:00 · 4399 阅读 · 2 评论 -
Delphi的类型转换===转帖收藏
Delphi是一种强类型转换的语言。在VC中,赋值符用″=″,例如x=1;到了Delphi赋值符就变成了″:=″,例如x:=1。 从赋值时用符号″:=″而不用″=″,就隐约可见Delphi对类型匹配要求之严,即赋值符右边的类型一定要和左边一致。用惯了VB或VC的程序员,初用Delphi,稍不留神,就会出现类型不匹配的错误。对初学者而言,类型转换也是学习Delphi的重点和难点,为此本文特对De原创 2009-03-04 14:43:00 · 1321 阅读 · 0 评论 -
Delphi编译开关=====转帖收藏
Delphi编译指令详解(1-10)发表:不详 阅读:次 关键字:不详 字体:[大 中 小] Delphi编译指令详解(1)——总述Delphi编译指令共有三种,开关编译指令、参数编译指令和条件编译指令。一个编译指令实际上是一个标志符(编译器所能识别的标志符),且有其固定的语法。编译器根据不同的指令按不同的方式编译程序。你可以将一个编译指令放在程序的任何位置。编译指令的开始字符是原创 2009-03-06 13:43:00 · 9940 阅读 · 0 评论 -
New 和 GetMem 的不同之处====转帖收藏
如果操作一个 record 指针中的字符串变量,会不会丢失 string 的内 存空间,造成内存泄漏?结果是:使用 New() 分配的内存,会自动初始化 record 的内容,并且在 Dispose 时自动 清除所有已分配的内存,包括 string 或其他动态数组的内存。GetMem/FreeMem 没有这个 性质。事实上,New() 中调用了 GetMem,并且原创 2009-06-02 11:07:00 · 1053 阅读 · 0 评论 -
delphi 变参函数:array of const 转帖收藏
array of const2008-03-11 10:20Delphi的Format函数大家都用得很多,第二个参数用着确实很方便。最近在数据库开发应用中需要自己创建一个带array of const参数的函数,对于常用的类型String,Integer,Pointer处理都没什么问题,但当用到Widestring类型时却出错,摸索了一上午,感觉获益良多。现在将问题、解决问转载 2009-05-29 17:16:00 · 2601 阅读 · 0 评论 -
Delphi指针大全---转贴收藏
Delphi指针理解看一个指针用法的例子: 1 var 2 X, Y: Integer; // X and Y 整数类型 3 P: ^Integer; // P 指向整数类型的指针原创 2008-10-31 16:49:00 · 4802 阅读 · 0 评论 -
Delphi编程注意事项---转贴收藏
任何单元必须有对应测试单元,任何类和函数必须有对应的测试函数,允许合并少于3个关联测试函数,即一个测试函数同时测试3个函数。 PObj继承下来的对象是需要释放的,所以返回值上禁止出现PObj继承下的对象,也就是说不允许在函数里New对象并返回。例: [禁止] function SomeOne():PStrList;如果需要传递对象参数则放在函数参数里,这样就由调用者来创建和释放对象。例原创 2008-10-31 15:35:00 · 1872 阅读 · 0 评论 -
Thread大全---转贴收藏
Delphi中有一个线程类TThread是用来实现多线程编程的,这个绝大多数Delphi书藉都有说到,但基本上都是对TThread类的几个成员作一简单介绍,再说明一下Execute的实现和Synchronize的用法就完了。然而这并不是多线程编程的全部,我写此文的目的在于对此作一个补充。 线程本质上是进程中一段并发运行的代码。一个进程至少有一个线程,即所谓的主线程。同时还可以有多原创 2008-10-30 11:28:00 · 8613 阅读 · 0 评论 -
获取Exe文件版本信息的函数(拷贝收藏)
Type TFileVersionInfo = Record FixedInfo:TVSFixedFileInfo; {版本信息} CompanyName:String; {公司名称} FileDescription:String; {说明}转载 2008-04-03 11:36:00 · 3042 阅读 · 0 评论 -
Delphi中使用ADO连接Excel
Delphi中使用ADO连接Excel有感 By panther666 今天在Delphi中使用ADO连接Excel(以前在一本书看过,复习一下-_-!!),有所收获,不敢独享。 第一部分: 1. 设置ADOConnection的ConnectionString属性的OLE DB的提供者要选择Microsoft Jet 4.0 OLE DB Provider(这本来是用于连接Access数转载 2008-04-15 13:46:00 · 2152 阅读 · 0 评论 -
Delphi从DataSet导出到Excel
Delphi从DataSet导出到ExcelExportDBGrid(toExcel: Boolean); var bm: TBookmark; col, row: Integer; sline: String; mem: TMemo;转载 2008-04-15 14:12:00 · 3289 阅读 · 0 评论 -
ADO面板上的控件简介
ADO面板上的控件简介 一、 TADOConnection组件该组件用于建立数据库的连接。ADO的数据源组件和命令组件可以通过该组件运行命令及数据库中提取数据等。该组件用于建立数据库的连接,该连接可被多个数据集所共享,但是并不是应用程序中必须的,因为ADO数据集及命令组件通过设置其ConnectionString属性转载 2008-04-15 15:24:00 · 2341 阅读 · 0 评论 -
cxGrid使用笔记
使用cxGrid有一些时间了,在这里总结一下使用cxGrid的一些方法,希望给刚开始接触cxGrid的人一些帮助。1.简单介绍:cxGrid右下方的cxGrid1Level1是表示Grid表的层,cxGrid可以有多层,这相当于集合了PageControl的功能,而cxGrid1Level1右边的cxGrid1DBTableView1相当于DBGrid一样。右击cxGrid1可以添加cxGri转载 2008-05-14 16:23:00 · 12132 阅读 · 0 评论 -
安装FastMM------转贴收藏
FastMM ,在D2006和2007中已代替了原来的内存管理器。D7也可以使用,而且很方便哦。请看步骤:1. FastMM是开源项目,去她老家先拖个来. http://sourceforge.net/projects/fastmm,我使用的是FastMM.v4.86.2.文件夹Replacement BorlndMM DLL/Precompiled/for Delphi IDE/Performa原创 2008-10-22 19:28:00 · 1887 阅读 · 0 评论 -
Delphi中ADO处理数据的几种方式的速度比较
ADO+DataProvide+ClientDataSet 插入1000行数据需要2.078秒ADO直接SQL命令 3.400秒ADO的批量方式 启动事务 1.328秒 不使用事务1.553秒(ADOQuery的LockType属性为ltBatchOptimistic CursorType为Static 提交调用UpdateBatch方法) 操作的表结构:CREAT原创 2008-10-13 15:38:00 · 5693 阅读 · 1 评论 -
TeeChart8.0安装 ---转贴收藏
TeeChart 7.0 With Source在Delphi 7.0中的安装汗....裝個組件弄了我幾個小時,還沒有搞定,方法是按下面的弄,但是安裝好以後出現[Fatal Error] Required package tee not found 這個錯誤,還在鬱悶中前一段时间我写过一篇《TeeChart 6.01在Delphi 7.0中的安装》,昨天得到了新的TeeCha原创 2008-10-30 09:47:00 · 6113 阅读 · 0 评论 -
Delphi编译指令====收藏转帖
一个程序从无到有的过程是这样的: 编辑代码 -> 预处理 -> 编译(成dcu等) -> 链接(为exe等). 什么是预处理? 譬如 VCL 中有很多代码是兼容 Linux 的, 在 Windows 下就需要在编译之前预处理掉那些 for Linux 的代码. 1、判断操作系统: 其中的 "MSWINDOWS" 和 "LINUX" 就是 Delphi 预定义的 "条件标识原创 2009-06-10 09:26:00 · 1511 阅读 · 0 评论 -
使用KOL开发体积较小的应用程序
本文请述了如何在Delphi2007中使用KOL组件,并使程序体积变小。KOL, MCK的下载请移步至其官方网站:http://kolmck.net/使用KOL的最新版本可以顺利的安装到Delphi2007上,安装完毕后,可以看到工具面板上多出一组控件:然后新建一个VCL Application,拖入TKOLProject控件,此时会自动弹出目录选择框,选择项目的保存路径即转载 2009-06-21 21:01:00 · 2305 阅读 · 0 评论 -
用DELPHI操作EXCEL====转帖收藏
DELPHI中EXCEL组件的使用方法:一) 使用动态创建的方法首先创建 Excel 对象,使用ComObj:var ExcelApp: Variant;ExcelApp := CreateOleObject( Excel.Application );1) 显示当前窗口:ExcelApp.Visible := True;2) 更改 Excel 标题栏:ExcelApp.Ca转载 2009-06-22 11:55:00 · 1430 阅读 · 2 评论 -
将Dev的皮肤封装在包中
Dev的皮肤导致编译的执行文件比较大,所以如果能将皮肤代码封装在包中,在需要的时候以插件的形式载入,则不会影响执行文件的尺寸了.通过测试发现把如下单元加入到运行时包中,并在主程序中调用LoadPakage函数加载包即可实现皮肤切换,如果希望使用皮肤则同时发布包,不使用皮肤则主程序文件大小也不会受到影响.unit LoadDevSkin;interfaceuses Windows, Cl原创 2011-12-15 11:28:13 · 2776 阅读 · 0 评论 -
Delphi2007获取对象的published方法
procedure GetObjectPublishedMethods(const AObj: TObject; var AList: TStringList);var VMT: Pointer; pMethodInfo: Pointer; nCount: Integer;begin AList.Clear; VMT := PPointer(AObj)^原创 2011-12-16 10:42:55 · 1422 阅读 · 0 评论 -
Delphi6/7/2007获取类型信息
2010年2月10日Delphi2010强化的反射第一篇http://hi.baidu.com/rarnu/blog/item/880c68810337f3d1bc3e1e9e.html第二篇http://hi.baidu.com/rarnu/blog/item/29914b4a32faac2a08f7ef7f.htmlposted @ 2010-02-10转载 2011-12-16 09:57:06 · 3621 阅读 · 0 评论 -
合并Dev控件包为一个独立的包,解决带皮肤后编译文件过大问题
将Dev的所有包按照依赖顺序依次将其中的各个单元引入到一个运行时包中,并且requires中依赖上篇所述的Delphi2007合并运行时包。测试发现带上皮肤后的exe带包编译(Dev合并包及Delphi2007运行时合并包)只有35k大小,但是这样一来我们要发布两个大块头bpl,dev合并后35M,Delphi2007运行时合并包14M,ASPack压缩后减半。解决方案只能向vs学习了,单独开发一原创 2012-01-04 10:45:35 · 8397 阅读 · 1 评论 -
使用UNICODE时需要注意的事项
FIBPlus 6.0及以上版本支持UNICODE. FIBPlus以前版本不支持这个特性,因此不能将所有的连接字符集都设置为UNICODE_FSS,而且无法提供数据库内容的详细信息.本文的目的是解释如何正确的使用UNICODE.创建一个表: CREATE TABLE NEW_TABLE (ID INTEGER NOT NULL,NAME_1251 VARCHAR(10) CH翻译 2012-01-31 10:16:23 · 1917 阅读 · 0 评论 -
Devrace FIBPlus:在 Delphi 和C++ Builder 应用程序中优化网络传输
本文将给出一些建议和范例以帮助开发者建立高效的InterBase和Firebird应用程序.这种优化网络传输技术可用于多用户环境及与服务器通过低速网格通道(ISDN)相连的情形.缓存元数据无论表的列属性是否设置为Required (NOT NULL 字段), 对于ReadOnly (计算字段)和DefaultExpression (默认值)等信息,FIBPlus都会自动获取这些列信息. 这翻译 2012-01-31 08:50:10 · 2105 阅读 · 0 评论 -
FireBird+FIBPlus+存储过程查询数据集
在FireBird中创建存储过程,如下图:脚本:SET TERM ^ ;CREATE OR ALTER PROCEDURE GETPERSONINFO ( adept_id integer not null)returns ( dept_name varchar(50), person_name varchar(50))asbegin原创 2012-01-12 11:01:11 · 2448 阅读 · 0 评论 -
InterBase 和 Firebird服务器事务和FIBPlus支持
快速,灵活和高效的Delphi,BCB和Kylix直接使用InterBase API函数操作InterBase和FireBird的组件库.本文基于Michael Zhuravlev (mikus@mail.ru)所写的文章InterBase 和 Firebird服务器事务的模式Interbase支持如下事务隔离级别: READ COMMITTED RECORD_VERSION翻译 2012-01-11 09:54:40 · 3035 阅读 · 0 评论 -
dcc32.exe命令行编译工程搜索路径的问题
时间到了23点,说这么一句,是因为时间紧迫,还有很多工作没有做完,但还是坚持花半个小时写这么一篇文章,总是找别人帮忙解决问题,不出点绵薄之力,都不好意思再混下去。OK,长话短说废话少说,进入正题。相信对dcc32.exe动过念头的人,都碰到搜索路径的问题:在编辑器中设置好了Search Path,使用dcc32.exe编译工程时愣是提示找不到相关文件,究其原因,还是因为没有指定转载 2011-12-22 14:18:36 · 2834 阅读 · 1 评论 -
Delphi函数调用效率测试
Delphi在给函数传参的时候,可以在参数前加上var、const、out做修饰,或者也可以使用指针参数。这几种方式的应用场景都很清晰了,但是他们的执行效率有什么差别呢?为此我做了一个测试,定义一个整数数组aInts: Array[0..10000] of Integer;并将其作为参数传给一个空函数。循环调用这个函数十万次。消耗时间如下:参数类型 var类型参原创 2011-11-15 10:59:00 · 2106 阅读 · 0 评论 -
Delphi带包编译实现插件方式开发
1.新建一个exe执行文件作为主框架,并建立一个存放插件类的单元,建立插件类TTestClass.接着新添加一个单元TestClasses1,在其中添加一个继承于TTestClass的类TTestClass1,并在单元的initialization节中调用基类TTestClasses1的RegistClass方法注册类型.2.创建运行时包,将TestClasses单元添加到Contai原创 2011-12-01 10:18:01 · 3808 阅读 · 0 评论 -
可能你不知道的TClientDataset功能=====网上收集
http://www.delphibbs.com/keylife/iblog.asp?author=archonwangkeyLife富翁笔记 作者: shiningplus标题: delphi Midas SQLServer的自增字段的处理 关键字: delphi Midas 自增字段 分类: 个人专区 密级: 公开 (评分: , 回复: 0, 阅读: 1830) ?? delp原创 2009-09-09 21:47:00 · 3819 阅读 · 0 评论 -
delphi DataSnap巢状主从表实现
服务端:添加ADOConnection,ADOQuery1,ADOQuery2。设置ADOQuery1为主表,ADOQuery2为从表。(通过 ADOQuery2.SQL.Text:= select * from 从表 where FKID=:主表PKID设置)。添加DataSetProvider1和DataSetProvider2分别连接到ADOQuery1和ADOQuery2。客户端原创 2009-09-09 21:31:00 · 3708 阅读 · 1 评论 -
提高Delphi的编译速度====收藏转帖
delphi的编译速度提高(一)此博文为原创,转载请注明出处作者 :二娃 此博文的内容我曾经回答群内和论坛内的网友提问时回答过,现在写第一部分,第二部分,我再给出一个终极的提高速度的方法我用过delphi 7,delphi2005,2006,2007 现在零星地用用2009以及2010,但是无论用哪种版本,其中第三方控件是少不了的,可是随之而来的问题是,每多用一种类型的第三方控原创 2009-09-29 16:13:00 · 4797 阅读 · 1 评论 -
delphi中关于bpl发布时将vcl60.bpl,vcldb60.bpl......等多个bpl 打包成一个bpl的方法=====转帖收藏
关于bpl发布时将vcl60.bpl,vcldb60.bpl......等多个bpl 打包成一个bpl的方法。或者说:不需要vcl60.bpl情况下 18.5K的exe 照常可以运行。或者说:Build with runtime packages的时候只使用自己的包,其他的都是静态链接入EXE 新建一个包,将lib下相应的dcu文件add进去。然后其他的 基于 rtl60和这个bpl就可以了。我做转载 2009-09-29 16:18:00 · 6836 阅读 · 1 评论 -
用Delphi制作BPL包=====转帖收藏
用Delphi制作BPL包2007-6-21背景GCM3构造时间长的问题由来已久。伴随着时间的流逝,系统功能越来越强大,模块越来越多,目前仅GCM一项,需要编译的客户端dll达389个之多。在编译机上,一次完整的编译过程(GCM+GCC_PE)耗时更是长达100分钟。经常出现这样的情况:开发人员和测试人员并没有别的事情,就是在等待编译版本,比如发版前的完整构造,或者每日构造失败需要重新转载 2009-09-29 16:40:00 · 5475 阅读 · 0 评论 -
用PLSQL自动生成数据库表的Delphi对象
DECLARE TYPE TY_QUECUR IS REF CURSOR; CUR_COLUMNS TY_QUECUR; SQLCMD VARCHAR(500); TABNAME VARCHAR(20); COLNAME VARCHAR(50); COLTYPE VARCHAR(20); COLCOMMENT VARCHAR2(50); COLLENGTH INTEGER;原创 2009-11-14 22:37:00 · 2090 阅读 · 1 评论 -
我的Delphi开发经验谈(本人修改版) 收藏
我的Delphi开发经验谈(本人修改版) 收藏 开发环境-------- Delphi 7是一个很经典的版本,在Win2000/XP下推荐安装Delphi 7来开发软件,在Vista下推荐使用Delphi 2007开发软件。安装好Delphi 7后,应立即安装Delphi 7 Update Pack 1,Delphi 2007则建议尽量安装最新的版本。工欲善其事,必先利其器,为了提升开发效率,为了能更加得心应手的处理接下来的开发工作,我们有必要安装一些有用的开发辅助工具(Delphi将此类插件以Exp转载 2010-08-10 17:53:00 · 7517 阅读 · 0 评论 -
OpenCV2.3翻译为Delphi--测试
unit MainForm;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, OpenCV, IPL;type TFrmMain = class(TForm) Button1: TButton;原创 2011-11-29 16:03:51 · 3960 阅读 · 12 评论