• RECT矩形


    矩形结构的原型:

    1 typedef struct tagRECT
    2 {
    3     LONG    left;
    4     LONG    top;
    5     LONG    right;
    6     LONG    bottom;
    7 } RECT, *PRECT, NEAR *NPRECT, FAR *LPRECT;
    RECT定义

    设置RECT变量的三种方法:

    1、

    RECT rect = {100,100, 300,200};

    2、注意这里的坐标系统,并不是左右配对,上下配对。

    RECT rect;
    
    rect.left = 100;
    rect.top = 100;
    rect.right = 200;
    rect.bottom = 200;

    3、掉用SetRect函数:

    SetRect(
        _Out_ LPRECT lprc,
        _In_ int xLeft,
        _In_ int yTop,
        _In_ int xRight,
        _In_ int yBottom);
    SetRect定义

     FillRect函数:通过掉用RECT类型变量和一个画刷句柄画出一个矩形。

    FillRect(
        _In_ HDC hDC,
        _In_ CONST RECT *lprc,
        _In_ HBRUSH hbr);
    FillRect定义

    InvertRect函数:颜色反转,将矩形的颜色反转

    InvertRect(
        _In_ HDC hDC,
        _In_ CONST RECT *lprc);
    InvertRect定义

    InflateRect函数:放大和缩小矩形,当x与y轴为正的时候是放大,当x写y轴为负的时候为缩小

    InflateRect(
        _Inout_ LPRECT lprc,
        _In_ int dx,
        _In_ int dy);
    InflateRect定义

     OffsetRect函数:偏移矩形,注意该函数一定要在FillRect和FrameRect函数前使用否则无效。

    OffsetRect(
        _Inout_ LPRECT lprc,
        _In_ int dx,
        _In_ int dy);
    OffsetRect定义

    FrameRect函数:画矩形边框,也必须要一个RECT变量和画刷句柄。

    FrameRect(
        _In_ HDC hDC,
        _In_ CONST RECT *lprc,
        _In_ HBRUSH hbr);
    FrameRect定义

    CopyRect函数:将第二个RECT类型的变量拷贝到第一个RECT变量中

    CopyRect(
        _Out_ LPRECT lprcDst,
        _In_ CONST RECT *lprcSrc);
    CopyRect定义

     IntersectRect函数:取得两个矩形中间相交的矩形

    IntersectRect(
        _Out_ LPRECT lprcDst,
        _In_ CONST RECT *lprcSrc1,
        _In_ CONST RECT *lprcSrc2);
    IntersectRect定义

    IntersectRect(&rect3, &rect1, &rect2);

    UnionRect函数:合并两个矩形

    UnionRect(
        _Out_ LPRECT lprcDst,
        _In_ CONST RECT *lprcSrc1,
        _In_ CONST RECT *lprcSrc2);
    UnionRect定义

     UnionRect(&rect3,&rect,&rect2);  通过rect1和rect2得到rect3

    SetRectEmpty函数:将矩形lpRect设为一个空矩形(所有字段都为空)

    1 SetRectEmpty(
    2     _Out_ LPRECT lprc);
    SetRectEmpty定义

    IsRectEmpty函数:判断一个矩形是否为空

    IsRectEmpty(
        _In_ CONST RECT *lprc);
    IsRectEmpty定义

    FillRect函数:判断鼠标是否在矩形中

    PtInRect(
        _In_ CONST RECT *lprc,
        _In_ POINT pt);
    PtInRect定义

    实例

    RECT rect = {0,0, 100,100};
    
    case WM_LBUTTONDOWN:
            POINT apt;
            apt.x = LOWORD(lParam);
            apt.y = HIWORD(lParam);
    
            if(PtInRect(&rect, apt))
            {
                MessageBox(hWnd, TEXT("在矩形上!"), TEXT("消息"), MB_OK);
            }
            else
            {
                MessageBox(hWnd, TEXT("不在矩形上!"), TEXT("消息"), MB_OK);
            }
            break;
  • 相关阅读:
    Cypress系列(74)- each() 命令详解
    Cypress系列(73)- within() 命令详解
    实战-电力窃露漏电用户自动识别
    谷歌colab切换使用tensorflow1.x版本
    解决pip安装tensorflow下载缓慢问题
    如何将tensorflow1.x代码改写为pytorch代码(以图注意力网络(GAT)为例)
    graph attention network(ICLR2018)官方代码详解(tensorflow)-稀疏矩阵版
    graph attention network(ICLR2018)官方代码详解(tensorflow)
    DGL中文文档
    graphSAGE的python实现
  • 原文地址:https://www.cnblogs.com/2016Study/p/5430517.html
Copyright © 2020-2023  润新知