1.在一個無標題的窗體中用MOUSEMOVE事件判斷鼠標坐標是否到達窗體的邊緣,如果是的話將鼠標指針改為可調整窗體大小的雙向箭頭.
private void Form1_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
{
if(0 == e.X)
{
this.Cursor = Cursors.SizeWE;
}
//改成這樣就可以了,很奇怪(不能寫成:e.X >= this.Width)
else if(e.X >= this.Width-2)
{
this.Cursor = Cursors.SizeWE;
}
else
{
this.Cursor = Cursors.Default;
}
}
2.但c#.net提供的cursor類只能做windows提供的光標形狀之間的變換,cursor類貌似不支持動畫以及多色的文件。我想要用自己的位圖文件作為光標,應該怎么弄呢?
方案:使用鼠標文件定義自己的鼠標指針。
Cursor.Current=new Cursor(@"C:\my.cur");
OR: Cursor Cur=new Cursor(@"C:\my.cur");
this.Cursor = Cur;
在窗體的構造函數里加入上面的代碼,就可以改變鼠標指針形狀。
my.cur是鼠標位圖文件,將鼠標圖片直接作為文件加入到工程內,在工程內選擇添加的文件后察看屬性,修改生成屬性值為嵌入的資源,這樣就可以編譯到exe里面取了。
my.cur是鼠標位圖文件,將鼠標圖片直接作為文件加入到工程內,在工程內選擇添加的文件后察看屬性,修改生成屬性值為嵌入的資源,這樣就可以編譯到exe里面取了。