在你的程序中拦截这些剪贴版的消息(可能要不来这么多),不处理它就可以了
WM_COPY  
WM_CUT  
WM_PASTE  可以这么做
procedure ClipCopy(var M:TMessage); Message WM_COPY;
begin
end;
我没有试过(我机器上没装Delphi),如果不行看看消息的返回值。开不行就看一看TCustomEdit的原码。当最为密码框使用的时候,它也不响应剪贴版的消息

解决方案 »

  1.   

    不难,override Wndproc处理,将WM_COPY,WM_PASTE WM_CUT过滤。
      

  2.   

    在程序运行时Open
    结束时CloseClipboard.OpenOpens the clipboard, preventing other applications from changing its contents until the clipboard is closed.procedure Open;DescriptionCall Open before adding a series of items to the clipboard. This prevents other applications from overwriting the clipboard until it is closed. (When adding a single item to the clipboard, there is no need to call Open.)When an application has finished adding items to the clipboard, it should call the Close method. The clipboard can be opened with multiple calls to the Open method before being closed. Open and Close maintain a count of the number of times the clipboard has been opened and will not close it until Close has been called the same number of times.
      

  3.   

    本人在MFC等这些方面还不是很熟悉,麻烦victorcd兄进一步明示;
      

  4.   

    就是在FormCreate中添加ClipBoard.Open;在FormClose中添加ClipBoard.Close;即可!注意要Uses Clipbrd;
      

  5.   

    Kingron 的办法表面上是可以,但是如果转到了另一个程序再回到本程序就又可以用
    clipboard了
     
      

  6.   

    那你在Form Active中添加代码就可以了,这只是一个思路!
    采用Override的方法,Override Form的不行啊!难道要Override Edit or Memo...的Wndproc吗?拦截消息的方法也不行啊!拦截Form的WM_COPY没有任何反映!拦截Application的WndProc也没有用!
      

  7.   

    拦截EDIT,MEMO可以做到:
    type
      tmyedit=class(tedit)
        procedure wmcopy(var msg:tmessage);message wm_COPY;
      end;type
      TForm1 = class(TForm)
        procedure FormCreate(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form1: TForm1;
      myedit:tmyedit;
    implementation{$R *.DFM}procedure TMyedit.wmcopy(var msg:tmessage);
    begin
      showmessage('kfdsjdfs');
    end;procedure TForm1.FormCreate(Sender: TObject);
    begin
     notitle:=false;
     myedit:=tmyedit.Create(self);
     myedit.parent:=form1;
    end;end.