Qt 无边框窗体拖动(采用Qt事件 和 Win API 两种方式)

Qt 无边框窗体拖动(采用Qt事件 和 Win API 两种方式)

Win API 方式
包含头文件与需要用到的库

#ifdef Q_OS_WIN
#pragma comment(lib, "user32.lib")
#include <qt_windows.h>
#endif

发送系统消息,进行移动

void Widget::mousePressEvent(QMouseEvent *event)
{
#ifdef Q_OS_WIN
    if (ReleaseCapture())
           SendMessage(HWND(winId()), WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0);
       event->ignore();
#else
#endif
}

原文如下:
Qt 之自定义界面(实现无边框、可移动)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章