Delphi
cml2030
这个作者很懒,什么都没留下…
展开
-
delphi offsetof , container_of 通过结构体成员获得到该结构体地址
C宏 offsetof(type, member)该结构体成员相对于该结构体的偏移量#define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)那Delphi版的表示式怎么写呢NativeUInt(@Record(nil^).member)C宏 container_of() 通过结构体成员得到该结构体地址...原创 2020-05-07 16:43:50 · 337 阅读 · 0 评论 -
delphi SimpleGraph控件的部分注释
TSimpleGraph是一个delphi下的可视化图形开源控件,有很强编辑态和运行态编辑功能,是学习开发DELPHI控件的一个很好的例子,控件本身有很强的扩展性,完全可以自定义绘制各种图形.控件的地址为http://www.delphiarea.com/products/delphi-components/simplegraph/完全读懂这个控件,还是要读源码,吃透以下为零几年时首次...原创 2019-12-12 14:38:59 · 820 阅读 · 0 评论 -
Python For Delphi 闪退解决 及 版本切换绿色部署方法
使用delphi调用python运行脚本可以使用python4delphi控件,这个控件开源,支持到最新的3.8版本python下载地址:https://www.python.org/downloads/python4delphi下载地址:https://github.com/pyscripter/python4delphi在选安装好python及python4delphi控件时,运行...原创 2019-12-04 16:09:51 · 834 阅读 · 0 评论 -
DELPHI INSERT INTO 语句的语法错误 解决方法
近日在delphi中向ACCESS插入数据库老是提示‘Exception class EOleException with message INSERT INTO 语句的语法错误。’非常怪,在ACCESS中的SQL视图中确可以运行,未有语法问题, 在试来试去总算发现在插入的安段中加上中括号就可以解决,之前的都不会估计是此次表内的某个安段成为ACCESS或ADO之类的关键字影响吧!在此记录原创 2008-09-23 17:35:00 · 5387 阅读 · 2 评论 -
delphi 2009 创建OCX 与JS传参例子
delphi2009中创建一个简单的OCX控件例子一,创建工程从File-New-orher-ActiveX-ActiveXLibrary后,会创建一个类型库的project1.DLL工程这时只要再加入一个ActiveForm,IDE自动将工程转成了project1.ocx在ActiveForm中拉入一个edit和一个button,名字默认即可.编辑Type Library,加入一原创 2009-03-24 14:38:00 · 2230 阅读 · 0 评论 -
Delphi操作word兼容性问题解决方法
最近用delphi操作word时,发现在word 2007 sp2时会有问题,在进行文字替换时出现提示“占用程序收到错误的数据”。2003,2010的word没有这个问题。解决方法,不使用delphi自带的封装的TWordApplication,TWordDocument对象,使原创 2011-07-19 09:07:20 · 2811 阅读 · 0 评论 -
No MDI forms are currently active 的解决方法
<br />描述一下运行环境,几个存放MDI Child 子窗体的DLL和一个管理这些子窗体MDI主程序.在主程序中动态调入DLL子窗体<br />首先,DLL中的Application和MDI主程序中的Application是不同样的。要将MDI主程序中的Application替换掉DLL中的Application<br />其次,在工程->属性->packages->Runtime packages->勾选Build with runtime packages,重新编译。这个也是最让人晕的原创 2010-11-03 00:18:00 · 5110 阅读 · 1 评论 -
Delphi7 内存管理及 FastMM 研究
<br />引自:http://hi.baidu.com/yehe2316/blog/item/d66d3b03b4440a064afb51f0.html<br /><br />Delphi7 内存管理及 FastMM 研究[转]<br />作者:刘国辉<br />一、引言<br /> FastMM 是适用于delphi的第三方内存管理器,在国外已经是大名鼎鼎,在国内也有许多人在使用或者希望使用,就连 Borland 也在delphi2007抛弃了自己原有的饱受指责的内存管理器,改用FastMM.转载 2010-12-21 09:39:00 · 1793 阅读 · 0 评论 -
Delphi数组及长度
一,定义://1. 标准方法:var MyArr: array[0..10] of Integer; //定义静态一维数组//2. 根据预定义类型来声明数组:type TMyArr = array[0..10] of Integer; //先定义一个数组类型var MyArr: TMyArr; //再定义静态数组//3. 在非过程区可以直接赋值: MyArr: array原创 2009-06-30 11:52:00 · 6100 阅读 · 1 评论 -
delphi 2009 ActiveX控件 常见问题
最近在用delphi将一个图形控件以activex方式做成可以在IE上运行的OCX,遇到了些问题,在此备忘一下 一 OnDestroy事件运行不了!释放问题通常我们会在窗口的OnDestroy里面写程序中的释放代码,但ActiveForm,当窗口销毁时确不会调用OnDestroy事件解决方法:重载DoDestroy函数,如下: procedure DoDestroy; overr原创 2009-04-10 15:45:00 · 2095 阅读 · 1 评论 -
对delphi的Create,inherited,AfterConstruction的流程了解及测试
写了一个测试代码, 创建一个窗体拉上一个按钮控件,复制以下的代码unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TFo原创 2008-12-10 10:08:00 · 3261 阅读 · 0 评论 -
TObject简要说明-对象的创建流程
TObject = class //创建 constructor Create; //释放 procedure Free; //初始化实列 class function InitInstance(Instance: Pointer): TObject; //清除实列 procedure CleanupInstance; //获得类的类型转载 2008-12-08 11:39:00 · 1009 阅读 · 0 评论 -
aowner , nil 和 self 的区别
一、owner和parent的区别: parent属性是指构件的包容器,构件只能在此范围内显示和移动。举例子如下: (1)在form1的窗体上,放一个panel1,并将panel1拉大, (2)在panel1上放一button1; (3)在form1上放一button2。 现在如果移动panel1,则button1随着panel1移动,这是因为button1的parent是panel1。转载 2008-10-31 08:29:00 · 1928 阅读 · 1 评论 -
Delphi单元文件Unit详解
有时随着项目改变开发语言也要换,今天用C#,明天可能就用DELPHI,在此把DELPHI文件结构备忘一下unit Unit1; interface {接口部分开始} uses {引用单元列表,这是可选的,如果包含必须紧跟interface关键字} {接口部分声明常量/类型/变量/过程和函数,这些声明对引用单元就像原创 2008-10-31 00:34:00 · 5048 阅读 · 0 评论 -
Delphi 自定义事件的例子
我们这个控件将演示控件的自定义事件的书写。这个控件有一个类型为string的SensitiveText属性,当用户在输入框中输入的文字为InvalidText时就会触发OnSensitiveText事件。按照惯例,我先把源码展示给大家:unit TextSenseEdit;interfaceuses SysUtils, Classes, Controls, StdCtrl原创 2008-10-28 11:36:00 · 7792 阅读 · 1 评论 -
自定义控件-控件关联
控件关联的实现控件的关联在Delphi中也是很常见的,我们可以设定一个控件的某个属性指向另一个控件。比如我们在窗体上放上Tedit,TpopupMenu两个控件,然后设定Tedit的PopupMenu属性为TpopupMenu控件,运行后在Tedit点击右键就会弹出刚才设定的那个TpopupMenu菜单,也就是说Tedit,TpopupMenu联手完成了任务。再比如TDBEdit控件的DataS转载 2008-10-28 15:09:00 · 1614 阅读 · 0 评论 -
Delphi控件开发
有人说过“不会开发控件的Delphi程序员不是真正的程序员”。Delphi正是由于高度的可扩展性和大量的第三方控件的支持才能吸引无数程序员挑剔的目光。即使是由于工作需要使用其他开发工具的开发者也常常怀念和Delphi度过的日日夜夜。接触Delphi已经一年多了,从当初对着Delphi组件面板上上百个控件不知所措,到现在已经可以根据需要开发一些有一定难度的控件,其中走过的路是十分艰辛的,所以特此原创 2008-10-28 10:00:00 · 1464 阅读 · 0 评论