zoukankan      html  css  js  c++  java
  • C# GetWindowRect 获取窗体在屏幕中的位置信息

    利用Win332的API:

         bool GetWindowRect(IntPtr hWnd, ref RECT_INFO lpRect);

      获取指定窗体控件,在屏幕内地位置信息。

    using System;
    using System.Runtime.InteropServices;
    
    namespace StudySln
    {
    
        public class Win32API
        {
    
            /// <summary>
            /// 获取指定窗口(或控件)在屏幕中的位置信息 (左边界,上边界,右边界,下边界)
            /// </summary>
            /// <param name="hWnd"></param>
            /// <param name="lpRect"></param>
            /// <returns></returns>
            [DllImport("user32.dll")]
            [return: MarshalAs(UnmanagedType.Bool)]
            public extern static bool GetWindowRect(IntPtr hWnd, ref RECT_INFO lpRect);
    
        }
    
    
        /// <summary>
        /// 矩形范围信息(结构体)
        /// </summary>
        [StructLayout(LayoutKind.Sequential)]
        public struct RECT_INFO
        {
            /// <summary>
            /// 当前矩形范围的最左边界
            /// </summary>
            public int Left;
            /// <summary>
            /// 当前矩形的最上边界
            /// </summary>
            public int Top;
            /// <summary>
            /// 当前矩形的最右边界
            /// </summary>
            public int Right;
            /// <summary>
            /// 当前矩形的最下边界
            /// </summary>
            public int Bottom;
        }
        
    }
    hWnd:窗口句柄,也可以传递一个控件的Handle值。
    lpRect:指向一个RECT结构的指针,该结构接收窗口的左上角和右下角的屏幕坐标。
  • 相关阅读:
    C#面向对象--类
    Unity DOTS--面向数据编程前的准备
    C#面向对象--命名空间
    C#面向对象--多态
    C#面向对象--继承
    C#中堆和栈的区别
    sql执行顺序
    cookie session
    栈和队列
    c# 单例模式
  • 原文地址:https://www.cnblogs.com/CUIT-DX037/p/14186108.html
Copyright © 2011-2022 走看看