剛畢業的小白乙個,最近在接手乙個專案,要在c#中使用dotnetbar來搭建窗體介面,所以要去除外邊框,但是去除外邊框後就不能移動窗體了,還是比較麻煩的。在網上查詢了好久的資料,有很多大神用了很多種方法來實現,當然鑑於本人是小白乙個,所以都不採用,看不懂。最後還是很小幸運的找到了:
首先新增引用,並宣告兩個方法:
[dllimport(「user32.dll」)]
public static extern bool releasecapture();
[dllimport(「user32.dll」)]
public static extern bool sendmessage(intptr hwnd, int wmsg, int wparam, int lparam);
在sendmessage方法中,第乙個引數是窗體的控制代碼,其餘三個常量引數宣告如下:
public const int wm_syscommand = 0x0112;
public const int sc_move = 0xf010;
public const int htcaption = 0x0002;
最後在窗體的mousedown***事件***中新增如下**:
private void form1_mousedown(object sender, mouseeventargs e)
是不是很簡單!!!!!!!!!!!
C 移動無邊框窗體
private point mouseoffset private bool ismousedown false private void form1 mousedown object sender,system.windows.forms.mouseeventargs e private void...
C 無邊框控制窗體移動
雖然c 自帶有邊框,但是在開發過程中那個邊框並不是很好看,當我們不使用那個邊框的時候,那麼就會面臨乙個問題,沒有c 自帶的邊框了,那麼窗體怎麼進行移動呢?這涉及到c 的三個事件 1.mousedown 滑鼠單擊事件 2.mousemove 滑鼠經過事件 3.mouseup 滑鼠抬起事件 在寫的時候依...
C 無邊框窗體移動和改變大小的實現
自己給軟體做的 將窗體設為無邊框後,想要其具有正常窗體的移動和改變大小功能,以下 可以實現。需新增using system.runtime.interopservices dllimport user32.dll public static extern bool releasecapture dl...