程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C >> C語言基礎知識 >> 如何監視剪貼板

如何監視剪貼板

編輯:C語言基礎知識

  在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;
   }
  
 
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved