zoukankan      html  css  js  c++  java
  • 【Demo 0042】不规则窗体

    我们常看到有许多不规则的窗体, 像Photoshop启动窗体以及一下破解软件也常是一些不规则窗体还有QQ,Windows 提供了不规则窗体的方法有多种, 我们先学习一下通过Rgn来实现。

    实现方法:

    1.  创建一个想要的状态区域(HRGN);

    2.  使用SetWindowRgn函数将区域做为参数即可实现不规则窗体.

    一、关键代码

    RECT rtClient;
    GetClientRect(hWnd, &rtClient);
    HRGN hRgn;
    hRgn = CreateEllipticRgn(rtClient.left, rtClient.top, rtClient.right, rtClient.bottom);
    SetWindowRgn(hWnd, hRgn, TRUE);
    DeleteObject(hRgn);

         以当前窗体区域大小创建一个椭员的RGN,并以此RGN作为窗体形状

    二、API讲解

         int SetWindowRgn(HWND hWnd, HRGN hRgn, BOOL bRedraw)

         hWnd      -- 当前窗体

         hRgn       -- 窗体的形状

         bRedraw   -- 调用完后更新

         功能: 通过指定区域来改变窗体的形状

    三、程序效果

       image

    演示代码

  • 相关阅读:
    第三次作业-有进度条圆周率计算
    第一周作业
    24点
    Cuber Sorting
    P1827 [USACO3.4]美国血统 American Heritage
    P4387 【深基15.习9】验证栈序列
    P2058 海港
    P4017 最大食物链计数
    P2196 挖地雷
    放苹果问题
  • 原文地址:https://www.cnblogs.com/ztercel/p/2165914.html
Copyright © 2011-2022 走看看