a亚洲精品_精品国产91乱码一区二区三区_亚洲精品在线免费观看视频_欧美日韩亚洲国产综合_久久久久久久久久久成人_在线区

首頁 > 編程 > C# > 正文

C#控件Picturebox實現鼠標拖拽功能

2019-10-29 19:58:48
字體:
來源:轉載
供稿:網友

工作需要,要在一個Form里面實現一個實時預覽的picturebox圖像,由于picturebox可能會遮擋到其后面的畫面,所以要求picturebox可以由用戶自行拖拽,類似于懸浮框。

原理說明

在網上兜了幾圈之后,決定用三段代碼實現。首先要注冊鼠標的三個事件:移動、鼠標左鍵按下、鼠標左鍵抬起,當然,都是在picturebox上的動作。注冊三個事件后,即可以在三個對應的事件函數里面實現拖拽。

代碼實例

首先在窗體設計器生成的代碼里面注冊picturebox的鼠標事件。注:網上說當你添加picturebox的時候,這個相應的鼠標事件就自動給添加上了,本人在實踐中一開始沒有手動去注冊此事件,結果實驗的時候對應的鼠標事件函數就是不觸發,后來翻看設計器自動生成的初始化模塊private void InitializeComponent() ,發現并沒有自動添加鼠標事件,自己手動添加后才順利運行,博友請先查看自己的有沒有自動生成,如果自動添加上了,就不用手動寫了。 
注冊鼠標事件代碼實例(自動生成的部分已省略未寫):

private void InitializeComponent(){  //   // RealPlayWnd  //   this.RealPlayWnd.MouseUp += new MouseEventHandler(this.RealPlayWnd_MouseUp);  this.RealPlayWnd.MouseDown += new MouseEventHandler(this.RealPlayWnd_MouseDown);  this.RealPlayWnd.MouseMove += new MouseEventHandler(this.RealPlayWnd_MouseMove);}

實現代碼實例:

int xPos;int yPos;bool MoveFlag;  //在picturebox的鼠標按下事件里,記錄三個變量.  private void RealPlayWnd_MouseDown(object sender, System.Windows.Forms.MouseEventArgs e)  {    MoveFlag = true;//已經按下.    xPos = e.X;//當前x坐標.    yPos = e.Y;//當前y坐標.  } //在picturebox的鼠標按下事件里. private void RealPlayWnd_MouseUp(object sender, MouseEventArgs e) {   MoveFlag = false;  } //在picturebox鼠標移動 private void RealPlayWnd_MouseMove(object sender, MouseEventArgs e) {    if (MoveFlag)   {     RealPlayWnd.Left += Convert.ToInt16(e.X - xPos);//設置x坐標.     RealPlayWnd.Top += Convert.ToInt16(e.Y - yPos);//設置y坐標.   }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到c#教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: va在线 | 国产对白刺激真实精品91 | 欧美视频二区 | 久久精品色欧美aⅴ一区二区 | 亚洲视频在线观看网站 | 精品亚洲一区二区三区在线观看 | 久久久久综合 | av电影中文字幕在线观看 | 久久综合久色欧美综合狠狠 | 日本三级黄色大片 | 在线播放亚洲 | 日韩精品免费在线视频 | 黄色的网站免费观看 | 18毛片 | 亚洲精品日韩综合观看成人91 | 国产中文字幕在线 | 欧美自拍视频在线观看 | 一区二区三区四区精品 | 国产精品成人在线观看 | 97在线免费 | 黄色影视免费观看 | 国产精品天天干 | 国产精品日日夜夜 | 亚洲伊人影院 | 成人中文字幕在线 | 亚洲视频中文字幕 | 中文字幕亚洲一区二区三区 | 中文字幕av一区二区三区 | 五月婷婷中文 | 久久的爱 | 国产精品久久久久久久久免费桃花 | a免费观看| 日本h在线观看 | 亚洲精品动漫久久久久 | 日韩一区二区免费视频 | 爱色av| 国产欧美一区在线 | 久久99久久精品视频 | 国产l精品国产亚洲区久久 国产suv精品一区 | zzzwww在线观看免 | 97久久香蕉国产线看观看 |