wbz008
2016-03-01 10:16
采纳率: 0%
浏览 3.2k

windows api 通过句柄获取控件在窗口的坐标问题?

图片说明

图片说明

NativeRECT sRECT = new NativeRECT();
//get 屏幕 RECT
GetWindowRect(hWnd, out sRECT);
问题1:该方法有时获去到的值是负数 ? 求解答?

  ScreenToClient(hWnd, ref xx);
    问题2:该方法获取到的值 一直是0 


    //结构体布局 本机位置

[StructLayout(LayoutKind.Sequential)]
public struct NativeRECT
{
public int left;
public int top;
public int right;
public int bottom;
}

  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • threenewbee 2016-03-01 12:23

    看你的nativerect怎么定义的,和C++的结构体签名、顺序是否一致。

    评论
    解决 无用
    打赏 举报
  • wbz008 2016-03-02 01:25

    public struct RECT
    {
    public int Left;
    public int Top;
    public int Right;
    public int Bottom;
    }

    //结构体布局 本机位置
    [StructLayout(LayoutKind.Sequential)]
    public struct NativeRECT
    {
        public int left;
        public int top;
        public int right;
        public int bottom;
    }
    
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题