易截截图软件、单文件、免安装、纯绿色、仅160KB

Delphi ActiveX Form的使用实例

 Delphi ActiveX Form的使用实例
By knityster
1. ActiveX控件简介
ActiveX控件也就是一般所说的OCX控件,它是ActiveX技术的一部分。
ActiveX控件可以被集成到很多支持ActiveX的应用当中去,或者直接用来扩展应用的功能,这些支持ActiveX的应用包括C++ Builder、Delphi、Visual dBASE、 Visual Basic、Visual C++、Internet Explorer、Netscape Navigator等。
简单的说,ActiveX技术可以使多种编译器中众多的控件得到互用,比如说:我可以将Delphi中的控件打包为ActiveX控件后然后加载到Visual C++中进行使用,这样在VC中也可以使用Delphi中的这些控件来实现相应的功能了。
2. ActiveX控件相关知识
在Delphi中,一个ActiveX控件由如下几个部分组成:VCL(可视化构件库)控件、属性、方法、事件,以及一个或者多个相关的类型库。
2.1、VCL构件
在Delphi中,一个ActiveX控件是由一个或者多个VCL构件经过包装以后得到的。所以,要使用Delphi来开发ActiveX控件,必须先得开发出或者选择要进行包装的VCL构件。也正是由于这个原因,我们可以将Delphi里大量优秀的VCL构件包装成ActiveX控件,从而可以在别的不能够直接使用VCL构件的开发工具(如Visual Basic、Visual C++)里也能够使用到这些控件啦!
但是,在Delphi里可以用来做ActiveX控件的VCL构件必须是TWinControl的后代。如果想用一个TGraphiControl的子类做ActiveX控件,在大多数情况下只需要把它的基类变为TCustomControl即可。有的VCL构件是被注册成非ActiveX控件的,例如 EditControl,这些控件也不能做ActiveX控件。
2.2、类型库
  类型库包含了控件的类型定义信息,提供了比接口更多的详细信息,是控件向它的宿主程序提供服务信息的一种途径。类型库的目的是为其他应用和编程工具提供关于它包含的构件对象的信息。开发ActiveX控件时,Delphi把类型库信息存入一个.TLB文件中及一个对应的Pascal文件.res(.TLB文件的Pascal语言版本),编译时类型库将作为资源链入DLL或者EXE中。
类型库的元素包括:
(1)类型库信息:包括类型库的总体信息和特征、当前类型库引用的其它类型库信息;
(2)构件类:代表整个ActiveX控件,包含了提供给客户应用的接口;
(3)接口属性和方法、事件;
(4)枚举类型:一种用作数据类型的相关常量,可以用在类型库的其他地方定义属性和方法。
图1 类型库编辑器
  Delphi提供了一个类型库编辑器,用于观察或修改类型库,见图1 (在Delphi中选择File->ope


相关文档:

Delphi写的验证身份证号有效性函数


function ValidatePID(const APID: string): string;
{内部函数,取身份证号校验位,最后一位,对18位有效}
function GetVerifyBit(sIdentityNum: string): Char;
var
    nNum: Integer;
begin
    Result := #0;
    nNum := StrToInt(sIdentityNum[1]) * 7 +
  ......

delphi中使用透明控件的几种方法

有时需要使用透明控件用于捕获鼠标消息
1.调用Windows2000,xp新的API函数实现这一功能的过程。使用SetLayeredWindowAttributes
2.直接设置控件的alphablend,alphablendvalue,间接调用上述api.
3.使用TStaticText控件
procedure WMCtrlColor(var Message: TWMCtlColor); message WM_CTLCOLOR;
procedure TForm3.WMCtr ......

unicode与GB2312转换等Delphi函数


{ 函数 : RESULTSTRING = HexToBin(HEXSTRING)
{ 目的 : 把十六进制字符串转换为二进制字符串
{
{===============================================================}
{ 函数 : RESULTINTEGER = HexCharToInt(HEXCHAR)
{ 目的 : 转换一个十六进制字符为整数
{==================================================== ......

Delphi写网页安全控件(dll,ocx)


Unt_Machine_WebDll.pas
BODY {background: #FFFFFF}
A:link { color: #0000FF}
A:visited { color: #0000FF}
A:Active { color: #0000FF}
.bold {font-weight: bold}
.italic {font-style: italic}
.underline {text-decoration: underline}
unit Unt_Machine_WebDll;
{$WARN SYMBOL_PLATFORM OF ......

Delphi Open Tools API 浅探

savetime2k@yahoo.com  2004.1.28
http://savetime.delphibbs.com
今天开始学习元件编辑器,感觉比属性编辑器简单许多,但还是遇到了一些疑问。如果你能解答文中记录的问题,请告诉我答案,谢谢!
目 录
===============================================================================
⊙ TBaseComponentEdit ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号