delphi开发ocx控件开发笔记(一)
由于项目的需要,近期开始学习用delphi开发一个软电话控件。
以前接触过一些delphi开发方面的东西(当然都是些皮毛啦),但没接触过ocx控件的开发,在此把一些简单的东西记下来,一方面以后自己可以再学习,另一方面希望对刚刚学习delphi开发ocx控件的初学者有所帮助,如果有什么写的不对和写的不好的地方,还请各位多多指正,在此先谢谢了。
关于ocx控件的一些基础知识在这里就不说这么多了,网络上有很多这方面的文章,有兴趣的朋友可以到网上去搜搜!!
Delphi集成开发环境对开发ocx控件提供了很好的支持,只要简单的几步就可以开发出属于自己的ocx控件了,下面是delphi开发ocx的一些简单的步骤:
1、 打开delphi集成开发环境,选择File->new->other,此时弹出一个多页的窗口,选择ActiveX页,选择ActiveX Form,点击OK后,弹出工程属性框,为ActiveX起一个名字,这样一个ocx控件的工程就建立好了
2、 保存工程
这样一个ocx控件就建好了,但这个ocx不具备任何功能,不过这时可以对这个ocx进行编译然后通过web发布,再通过我们就浏览器就可以调用这个ocx控件了,下面介绍下编译和发布的一些简单步骤:
1、选择project->compile project(ctrl+F9)a编译工程
2、注册组件:Run->register ActiveX server(说明,当往form中增加新的组件后,编译完后要重新注册,不然的话,新加的组件显示不出来)
3、发布:project->web deploy
相关文档:
uses Tlhelp32;
function KillTask(ExeFileName: string): integer;
const
PROCESS_TERMINATE = $0001;
var
ContinueLoop: BOOLean;
FSnapshotHandle: THandle;
FProcessEntry32: TProcessEntry32;
begin
Result := 0;
FSnapshotHandle := CreateToolhelp32Snapshot(T ......
var
Form1: TForm1;
a, b, c: Integer;
implementation
{$R *.dfm}
procedure test1(x, y, z: integer);
asm
mov a,eax
mov b,edx
mov c,ecx
end;
procedure test2(x, y, z: integer);
var
i,j,k: integer;
asm
mov i,eax
mov j,edx
mov k,ecx
mov eax,[esp+8]
mov a,eax
mov ......
1.防止刷新时闪烁的终极解决办法
{ 防止刷新时闪烁的终极解决办法(对付双缓冲无效时) }
Perform($000B, 0, 0); //锁屏幕 防止闪烁
// 做一些会发生严重闪烁的事情..
//解锁屏幕并重画
Perform($000B, 1, 0);
RedrawWindow(Handle, nil, 0, RDW_FRAME + RDW_INVALIDATE + R ......
我使用delphi也不是很长时间,由于经常要用到SQL语句,总结了一些Delphi中使用SQL语句要注意的事项,归纳起来主要有一下几条:
一、空格不要漏:
我们经常要拼装SQL语句,特别是where条件句,在各个语句中别忘了头尾加上空格。因为在一个语句中我们会注意用空格分开关键字但是往往忘了头尾的空格。例如:
sSQL=' select ......
http://hi.baidu.com/rainbow_chaser/blog/item/7eb5f001c0d864e508fa93ac.html
1.防止刷新时闪烁的终极解决办法
{ 防止刷新时闪烁的终极解决办法(对付双缓冲无效时) }
Perform($000B, 0, 0); //锁屏幕 防止闪烁
// 做一些会发生严重闪烁的事情..
//解锁屏幕并重画
Perform($000B, 1, 0);
RedrawWindow(Handle, nil, ......