关于message wm_copy(0分)

  • 主题发起人 主题发起人 chyzpc1
  • 开始时间 开始时间
C

chyzpc1

Unregistered / Unconfirmed
GUEST, unregistred user!
TmyEditor = class(TCustomControl)
protected
procedure WMCopy(var Msg: TMessage); message WM_COPY;
procedure TmyEditor.WMCopy(var Msg: TMessage);
begin
showmessage('df');
MyCopy;
Msg.Result := 1
end;
此消息得不到,请知道互技术的DFW指导指导,谢谢
 
因为你没有触发这个消息你怎么能得到??

你如果对它手工发送一条消息你看能不能得到

sendmessage(myEditor.handle, wm_copy, 0, 0)

如果你把TCustomControl换成TEdit,你再对那个实例按ctrl+c键也会触发那个消息

所以这个不是你得不到,是你没触发,你从TCustomControl类继承难道想自己重新写一个Tedit控件???
 
Copy消息和Ctrl+C不是一个概念

事实上,Ctrl+C是快捷键,它会出发一个消息(或者你自己发送
SendMessage)。然后才会让你的Editor响应消息
 
我只是举个例子,我没有只有ctrl+c才能触发wm_copy的消息
 
我就希望在我的自定义控件按下CTRL+C时,系统能自动发送wm_copy消息给我,
能实现吗? 而不用能过自定义控件的keyDown事件,判断出了用户按下CTRL+C键,然后才执行复制操作
 
我自己写了一个类似TEdit的控件,想实现CTRL+C执行复制功能
 
后退
顶部