首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

怎么判断鼠标位置是否在任务栏上?

2013-07-20 
【求助】如何判断鼠标位置是否在任务栏上??RT隐藏窗口标题栏后,自己写了个伪标题栏。但是出现了一个问题,就是

【求助】如何判断鼠标位置是否在任务栏上??
RT

隐藏窗口标题栏后,自己写了个伪标题栏。
但是出现了一个问题,
就是鼠标按住标题栏拖动窗口的时候,会将标题栏拖到windows任务栏背面,松开后就找不到窗口了
不知道怎么解决??? 鼠标 任务栏 拖动 标题栏 判断位置
[解决办法]

        [DllImport("user32.dll", EntryPoint = "GetWindowRect")]
        private static extern bool GetWindowRect(IntPtr hWnd, ref Rectangle lpRect);

        [DllImport("user32.dll")]
        public static extern IntPtr FindWindow(string strClassName, int nptWindowName); 

        private void MainForm_LocationChanged(object sender, EventArgs e)
        {
            IntPtr hWnd = FindWindow("Shell_TrayWnd", 0);

            if (hWnd != IntPtr.Zero)
            {
                Rectangle rect = new Rectangle();
                GetWindowRect(hWnd, ref rect);

                if (this.Top >= rect.Top)
                {
                    this.Top = rect.Top + this.Height;
                }
            }
        }

热点排行