Chinaunix首页 | 论坛 | 博客
  • 博客访问: 15183204
  • 博文数量: 7460
  • 博客积分: 10434
  • 博客等级: 上将
  • 技术积分: 78178
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-02 22:54
文章分类

全部博文(7460)

文章存档

2011年(1)

2009年(669)

2008年(6790)

分类: C/C++

2008-05-31 14:25:49

在Form1的.h的private加上:
void __fastcall ClipboardChanged(TMessage& Msg);
在Form1的.h的public加上:
BEGIN_MESSAGE_MAP
 MESSAGE_HANDLER(WM_DRAWCLIPBOARD,TMessage,ClipboardChanged)
END_MESSAGE_MAP(TForm)
在Form1的.cpp内加上:
void __fastcall TForm1::ClipboardChanged(TMessage& Msg)
{
 POINT MousePos;
 GetCursorPos(&MousePos);
 PopupMenu4->PopupComponent=Form1;
 PopupMenu4->Popup(MousePos.x,MousePos.y); //一有变化,就弹出一个菜单,复制,剪切或清除都能引发此函数
}
在Form1的.cpp内有一个ToolButton
void __fastcall TForm1::ToolButton9Click(TObject *Sender)
{
 static HWND LastHandle;
 static bool clip=false;
 if(clip==true)
 {
  ToolButton9->Down=false;
  ChangeClipboardChain(Form1->Handle,LastHandle); //结束监视
 }
 else
 {
  ToolButton9->Down=true;
  Clipboard()->Clear();
  Application->Minimize();
  LastHandle=SetClipboardViewer(Form1->Handle); //启动监视
 }
 clip=!clip;
}
阅读(1032) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~