MFC实现悬浮子窗口(附完整源码)

本文提供了使用MFC创建悬浮子窗口的完整源码,通过设置窗口风格如WS_EX_TOOLWINDOW和WS_EX_TOPMOST实现置顶和隐藏任务栏图标。在CFloatWnd类的OnMouseMove和OnPaint函数中处理窗口位置更新和内容绘制。代码可作为基础进行扩展和修改。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MFC实现悬浮子窗口


悬浮子窗口是在主窗口的基础上创建一个浮动的子窗口,可以随着鼠标的移动而位置变化。在MFC框架中,可以通过CWnd类的CreateEx函数来创建一个悬浮子窗口。

下面是实现悬浮子窗口的完整源码:

// FloatWnd.h

class CFloatWnd : public CWnd
{
public:
    CFloatWnd();

    BOOL Create(CWnd* pParentWnd);

    // Overrides
    // ClassWizard generated virtual function overrides
    //{
  {AFX_VIRTUAL(CFloatWnd)
    //}}AFX_VIRTUAL

    // Implementation
public:
    virtual ~CFloatWnd();

    // Generated message map functions
protected:
    //{
  {AFX_MSG(CFloatWnd)
    afx_msg void OnMouseMove(UINT nFlags, CPoint point);
    afx_msg void OnPaint();
    //}}AFX_MSG
    DECLARE_MESSAGE_MAP()

private:
    CPoint m_ptOffset; // 窗口位置偏移量
};

// FloatWnd.cpp

IMPLEMENT_DYNAMIC(CFloatWnd, CWnd)

CFloatWnd::CFloatWnd()
{
    m_ptOffset = CPoint(0, 0);
}

CFloatWnd::~CFloatWnd()
{
}

BEGIN_MESSAGE_MAP(CFloatWnd, CWnd
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

源代码大师

赏点狗粮吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值