zoukankan      html  css  js  c++  java
  • C# WPF获取任务栏时间区域的Rectangle

    [StructLayout(LayoutKind.Sequential)]
            public struct WindowRect
            {
                public int left;
                public int top;
                public int right;
                public int bottom;
            }
    
            [DllImport("user32.dll")]
            private static extern IntPtr FindWindow(string ClassName, string WindowName);
    
            [DllImport("user32.dll")]
            private static extern IntPtr FindWindowEx(IntPtr hwndParent, IntPtr hwndChildAfter, string className, string windowName);
    
            [DllImport("user32.dll")]
            private static extern bool ShowWindow(IntPtr hWnd, int nCmdShow);
    
            [DllImport("user32.dll")]
            static extern bool GetWindowRect(HandleRef hwnd, out WindowRect rect);
    
            const int SW_HIDE = 0;
            const int SW_SHOW = 5;
    
    
            [DllImport("user32.dll")]
            static extern IntPtr SetParent(IntPtr hWndChild, IntPtr hWndNewParent);
    
            public MainWindow()
            {
                InitializeComponent();
                this.Loaded += MainWindow_Loaded;
            }
    
            private void MainWindow_Loaded(object sender, RoutedEventArgs e)
            {
                IntPtr taskBarWnd = FindWindow("Shell_TrayWnd", null);
                IntPtr tray = FindWindowEx(taskBarWnd, IntPtr.Zero, "TrayNotifyWnd", null);
                IntPtr trayclock = FindWindowEx(tray, IntPtr.Zero, "TrayClockWClass", null);
                WindowRect rect;
                GetWindowRect(new HandleRef(Application.Current.MainWindow, trayclock), out rect);
                //this.Top = rect.top;
                //this.Left = rect.left;
                //this.Width = rect.right - Left;
                //this.Height = rect.bottom - rect.top;
                //this.Topmost = true;            
            }
    

      

  • 相关阅读:
    ConcurrentDictionary内部机制粗解
    c# class struct区别
    virtualbox安装增强功能时【未能加载虚拟光盘】
    【C++】 友元函数friend
    C++命名空间(namespace)(转载)
    C++中memset()用法
    C++ 虚函数和纯虚函数的区别
    C++中栈和堆上建立对象的区别(转载)
    c++继承
    C++构造函数和析构函数
  • 原文地址:https://www.cnblogs.com/liulun/p/4997821.html
Copyright © 2011-2022 走看看