使用OnNcHItTest表示CWnd而不是CDialog

时间:2010-03-23 13:31:16

标签: mfc visual-c++

我在对话框中使用了CWnd Derived对象。我需要能够在对话框中的任何位置拖动它。我有一个代码覆盖OnNCHitTest,用于移动一个对话框,从标题栏以外的位置拖动它。是否有任何等效代码来移动此CWnd。以下代码无效。

UINT CBaseSliderBtn::OnNcHitTest(CPoint point)
{
    UINT ret=CWnd::OnNcHitTest( point );
        if (ret == HTCLIENT)
            return HTCAPTION;

}

如果这不是正确的方法,请提示拖动滑块的其他最佳方法 谢谢

1 个答案:

答案 0 :(得分:0)

您的示例只是模拟鼠标操作,因为它们出现在对话框标题中。对话框标题允许您拖动对话框。 至于您的自定义窗口,它可能是一个子窗口,并允许使用窗口部分进行拖动。您应该处理mouse input以实施拖动。