DELPHI消息的处理流程
消息的处理流程,流程如下:
其派发处理过程详细如下:
注意:TWinControl里面WndProc有调用系统API DefWindowProc,该函数调用缺省的窗口过程来为应用程序没有处理的任何窗口消息提供缺省的处理。而TWinControl里面DefaultHandler又调用了系统API CallWindowProc,该函数CallWindowProc将消息信息传送给指定的窗口过程。
最后消息处理过程,以WM_LBUTTONDOWN消息为例如下:
这里就可以注意一下:MouseDown()函数是一个dynamic方法,因此可以先覆盖MouseDown()函数来处理自己的一些事件,然后用inherited来调用MouseDown()来执行组件里面的OnMouseDown代码
相关文档:
今天心血来潮在自己的电脑上安装了mysql-5.1.41-win32和mysql-connector-odbc-5.1.6-win32。以前,我曾经尝试使用DELPHI6去联接MYSQL但是在网上找很多资料都不很好用;今天突然也想起这个问题就干起回来了。
1. 建立数据库
use mysql;
drop database myDB;
create database ......
//Delphi部分
//回调函数定义
type TOnMyCallBack = procedure(data:pchar; id:Integer);stdcall;
//DLL中的导出函数声明
procedure StartCall(param: TOnMyCallBack(data:pchar; id:Integer);stdcall;
begin
...
...
end;
&n ......
absolute
//它使得你能够创建一个新变量, 并且该变量的起始地址与另一个变量相同.
var
Str: string[32];
StrLen: Byte absolute Str;
//这个声明指定了变量StrLen起始地址与Str相同.
//由于字符串的第0个位置保存了字符串的长度, 所以StrLen的值即字符串长度.
begin
Str := 'abc';
Ed ......
Delphi中实现全角转半角
function SbctoDbc(s:string):string;
var
nlength,i:integer;
str,ctmp,c1,c2:string;
{
在windows中,中文和全角字符都占两个字节,
并且使用了ascii chart 2
(codes 128 - 255
)。
全角字符的第一个字节总是 ......
有些时候,要写一些程序,在 JAVA 里面好难实现, 但如果使用其它编程语言却又比较容易时,我们不妨通过 JNI 来让不同语言的程序共同完成.
JNI 的教程, 网上 C 的比较多,Java 也提供了 javah.exe 为 C 语言的 JNI 程序生成头文件, 如果你是一个 Delphi 编程员, 能否让 JAVA 与 Delphi 程序交互呢? 答案是肯定的,今天我们就来 ......