在窗体内拖一个panel控件做容器,希望鼠标移动到panel范围内的时候箭头Arrow变成手型Hand图标。这部分代码没问题,是不是panel控件需要做一些声明之类的啊。
private bool IsMouseInPanel()//判断能否在图片显示框范围内 { if (Cursor.Position.X > PointToScreen(this.groupBox1.Location).X && Cursor.Position.X < PointToScreen(this.groupBox1.Location).X + panel1.Width && Cursor.Position.Y > PointToScreen(this.groupBox1.Location).Y && Cursor.Position.Y < PointToScreen(this.groupBox1.Location).Y + panel1.Height) { this.Cursor = Cursors.Hand; return true; } else { this.Cursor = Cursors.Arrow; return false; }
解决方案
20
Bitmap bmp=new Bitmap("xxxxx.png"); Cursor cursor = new Cursor(bmp.GetHicon()); panel1.Cursor = cursor;
10
不需要你想那么多,你把控件的Cursor属性修改好了,这部分工作系统会帮你处理。