为什么 CTRL+C 在 TMemo 组件上不起作用? (Vista+德尔福7)
为什么无法将 TDBMemo 组件中选定的文本复制到剪贴板? 德尔菲 7、Windows Vista。 以下代码无法捕获 ctrl+c 事件,而 ctrl+a 则可以正常工作。
uses clipbrd;
procedure THierarchierForm.dbm1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key=Ord('A')) and (ssCtrl IN Shift) then begin
dbm1.SelectAll;
Key:=0;
end;
if (Key=Ord('C')) and (ssCtrl IN Shift) then begin
Clipboard.AsText:=dbm1.SelText;
Key:=0;
end;
end;
谢谢
why it is not possible to copy selected text in TDBMemo component into clipboard?
DELPHI 7, Windows Vista.
Following code fails to catch ctrl+c event, whereas ctrl+a works fine.
uses clipbrd;
procedure THierarchierForm.dbm1KeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
begin
if (Key=Ord('A')) and (ssCtrl IN Shift) then begin
dbm1.SelectAll;
Key:=0;
end;
if (Key=Ord('C')) and (ssCtrl IN Shift) then begin
Clipboard.AsText:=dbm1.SelText;
Key:=0;
end;
end;
Thanx
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您提供的代码在普通表单的上下文中工作。一定有别的东西干扰。
最明显的是您的表单将
KeyPreview
设置为True
,因此您的表单可以处理CTRL+C
。请注意,我坚持在对你的问题的评论中表达的保留意见。
The code you present works in the context of a plain vanilla form. There must be something else interfering.
The most obvious is that your form has
KeyPreview
setTrue
and so your form handlesCTRL+C
.Note that I stand by my reservations expressed in the comment to your question.