程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> Visual Basic語言 >> VB綜合教程 >> 用SendMessage實現剪貼板操作

用SendMessage實現剪貼板操作

編輯:VB綜合教程
要使用這一技巧,你就需要聲明用於剪切、復制和粘貼的常數:
  
  PrivateConstWM_COPY=&H301
  PrivateConstWM_CUT=&H300
  PrivateConstWM_PASTE=&H302
  
  然後,聲明對SendMessageAPI的調用:
  
  PrivateDeclareFunctionSendMessageLib"user32"_
  Alias"SendMessageA"(ByValhWndAsLong,_
  ByValwMsgAsLong,ByValwParamAsLong,lParamAsAny)AsLong
  
  HWnd自變量能夠接受消息發送的目的控件的句柄,而wMsg自變量會接受一個表明要被發送的是哪個對象的常數。WParam和lParam自變量被用來把其他信息同消息一起傳遞,但是不對WM_CUT、WM_COPY或者WM_PASTE使用。
  
  下面是從菜單點擊事件調用SendMessageAPI的代碼:
  
  PrivateSubmnuCopy_Click()
  CallSendMessage(Me.ActiveControl.hwnd,WM_COPY,0,0)
  EndSub
  
  PrivateSubmnuCut_Click()
  CallSendMessage(Me.ActiveControl.hwnd,WM_CUT,0,0)
  EndSub
  
  PrivateSubmnuPaste_Click()
  CallSendMessage(Me.ActiveControl.hwnd,WM_PASTE,0,0)
  EndSub
  
  這個技巧能夠用於任何實現hWnd屬性,並能夠響應WM_CUT、WM_COPY和WM_PASTE消息的控件。還應該實現錯誤處理,以處理不帶hWnd屬性的控件。->

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved