社区
Delphi
帖子详情
关于函数指针
xthmpro_cn
2004-10-22 12:44:45
我将一个类函数扶植给两个控件的OnKeyDown事件,我在代码中如何比较这两个控件使用的是OnKeyDown是同一个函数?
谢谢!
...全文
148
7
打赏
收藏
关于函数指针
我将一个类函数扶植给两个控件的OnKeyDown事件,我在代码中如何比较这两个控件使用的是OnKeyDown是同一个函数? 谢谢!
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
hottey
2004-10-22
打赏
举报
回复
函数地址是一样的啊!
快乐老猫
2004-10-22
打赏
举报
回复
直接用=就可以
Bitter_fish
2004-10-22
打赏
举报
回复
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class( TForm )
Button1: TButton;
Button2: TButton;
B_Check: TButton;
procedure B_CheckClick( Sender: TObject );
procedure FormCreate( Sender: TObject );
private
P_OnKeyDown1, P_OnKeyDown2: Pointer;
procedure KE1( Sender: TObject; var Key: Word; Shift: TShiftState );
procedure KE2( Sender: TObject; var Key: Word; Shift: TShiftState );
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate( Sender: TObject );
begin
Form1.Button1.OnKeyDown := KE1;
Form1.Button2.OnKeyDown := KE2;
//改为 Form1.Button2.OnKeyDown := KE1; 试一下
end;
procedure TForm1.B_CheckClick( Sender: TObject );
begin
P_OnKeyDown1 := @Form1.Button1.OnKeyDown; //检察是否同一例程
P_OnKeyDown2 := @Form1.Button2.OnKeyDown;
ShowMessage( inttostr( integer( P_OnKeyDown1 ) ) );
ShowMessage( inttostr( integer( P_OnKeyDown2 ) ) );
if P_OnKeyDown1 = P_OnKeyDown2 then
ShowMessage( 'YES' )
else
ShowMessage( 'NO' );
end;
procedure TForm1.KE1( Sender: TObject; var Key: Word; Shift: TShiftState );
begin
ShowMessage( 'This is KE1' );
end;
procedure TForm1.KE2( Sender: TObject; var Key: Word; Shift: TShiftState );
begin
ShowMessage( 'This is KE2' );
end;
end.
ghchen
2004-10-22
打赏
举报
回复
可以在函数里修改变量
xthmpro_cn
2004-10-22
打赏
举报
回复
看Sender是不行的,我不是在函数内比较,而是在函数外比较后,如果不等于某个函数,重新赋值.
请大家帮忙
tsst
2004-10-22
打赏
举报
回复
看sender
xthmpro_cn
2004-10-22
打赏
举报
回复
呵呵给分了!
让你不再害怕指针
深入理解指针,很详细,如有错误请高手指点 PDF文件格式下载:http://download.csdn.net/source/454542
C/C++指针经典资料大全
C/C++指针经典资料大全,十余部经典资料书籍,是您精通C指针的理想教程。
腾讯2012笔试题目
腾讯2012笔试题目,包含很多普及型很高的题目
C语言 |
函数指针
作为函数的参数
函数指针
有两种常用的用法,一种是作为结构体成员,关于
函数指针
作为结构体成员的用法可移步至上一篇【C语言笔记】
函数指针
作为结构体成员进行查看。另一种是
函数指针
作为函数的参数。这一篇分享的是
函数指针
作为函数的参数。 一、
函数指针
作为函数的参数
函数指针
可以作为一个参数传递给另一个函数。这时
函数指针
的使用就像普通的常量和变量一样。当
函数指针
作为参数传递的时候,这时接收参数传递的函数通常需要根据这个指针调...
关于
函数指针
以及由
函数指针
引起的混乱
目录 【问题引入】 【例1】 【例2】 【问题1】 【由
函数指针
引起的混乱】 【问题2】 【理解1】 【理解2】 【特殊引用】 【我的问题】 【问题引入】
函数指针
是什么? 一个函数总是占用一段连续的内存区域,函数名在表达式中有时也会被转换为该函数所在内存区域的首地址,这和数组名非常类似。我们可以把函数的这个首地址(或称入口地址)赋予一个指针变量,使指针变量指向函数所在的内存区域,然后通过指针变量就可以找到并调用该函数。这种指针就是...
Delphi
5,930
社区成员
262,936
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章