如何屏蔽掉 CTRL+V, CTRL+C, CTRL+X等鍵?(100分)

  • 主题发起人 主题发起人 peterluolaw
  • 开始时间 开始时间
P

peterluolaw

Unregistered / Unconfirmed
GUEST, unregistred user!
老菜鸟今天问一个非常老的问题:在用Delphi6写的程序中
如何屏蔽掉系统的 CTRL+V, CTRL+C, CTRL+X 这三个鍵?
因为写的程序中有的在 TDBMEMO/TMEMO 控件中的内容是
不通过WIN98的剪贴板向程序外进行复制的!所以必须把这
些鍵屏蔽掉!请问能不能给一个非常详细的例子?先谢了!
 
最好使用钩子。
 
在keydown事件中判断shift和key值,将key值设为0就可以屏蔽了!
 
"在keydown事件中判断shift和key值,将key值设为0就可以屏蔽了!"
这个方法我已经试过了,在WIN98中没用的.
 
给TMemo加弹出菜单,三个菜单项(可以Visible := False)分别定义热键
CTRL+V, CTRL+C, CTRL+X.
 
是吗?用delphi在win98下倒是没有试过,不过用VB5做过,可以的啊。
 
拷贝以下程序吧(注意在MEMO的ONKeyPress事件),注意:三个 '' 是不同的健值哦,只不过看不见而已 :)
这方法最简单:
procedure TForm1.Memo1KeyPress(Sender: TObject; var Key: Char);
begin
if key in ['', '', ''] then
key := #0;
end;
 
后退
顶部