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 之自定義界面(實現無邊框、可移動)