0

如何只使我的 vc++ 窗口的底部变大,而其余的边(左、右和顶部)不变大?

我希望在表单的 3 侧(顶部、左侧和右侧)移动时显示默认箭头光标,并在表单底部显示尺寸 NS 箭头并使其起作用。

谢谢。

4

1 回答 1

0

这需要回退到直接处理 Windows 通知,它不被 Form 类包装。您需要重写 WndProc() 方法并自定义 WM_NCHITTEST 的处理。修改您的 stdafx.h 文件并添加,#include <windows.h>然后将此代码添加到您的表单中:

protected:
    virtual void WndProc(Message% m) override {
        __super::WndProc(m);
        if (m.Msg == WM_NCHITTEST) {
            switch ((int)m.Result) {
                case HTLEFT: case HTRIGHT: case HTTOP: 
                case HTTOPLEFT: case HTTOPRIGHT:
                case HTBOTTOMLEFT: case HTBOTTOMRIGHT:
                    m.Result = (IntPtr)HTCLIENT;
            }
        }
    }
于 2013-02-06T01:59:56.813 回答