中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在C#中使用Picturebox控件實現鼠標拖拽功能

發布時間:2021-05-31 17:55:34 來源:億速云 閱讀:272 作者:Leah 欄目:編程語言

怎么在C#中使用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坐標.
   }
}

關于怎么在C#中使用Picturebox控件實現鼠標拖拽功能問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

孝感市| 通河县| 宜春市| 甘德县| 靖宇县| 昔阳县| 博乐市| 色达县| 南漳县| 永济市| 华坪县| 新巴尔虎左旗| 日照市| 环江| 周宁县| 札达县| 榆社县| 仪征市| 泸溪县| 富平县| 馆陶县| 霍山县| 胶南市| 南宁市| 张家界市| 庆城县| 兴安盟| 瓦房店市| 南陵县| 五常市| 车险| 措美县| 安塞县| 封丘县| 木兰县| 隆子县| 大田县| 宁武县| 罗定市| 油尖旺区| 天峨县|