QT自繪最小化最大化拖動

2021-07-09 07:15:18 字數 1945 閱讀 1578

要想做出好看的介面,qt自帶的標題欄必須摒棄。

以下是兩種去掉標題欄的方式:

mainwindow::mainwindow(qwidget

*parent):

qmainwindow(parent),

ui(new

ui::mainwindow)

簡單的**列在下面:

mainwindow.h

private

slots:

void

on_actionminimize_triggered();//最小化視窗

void

on_actionclose_triggered();//關閉視窗

protected:

//自己重新實現拖動操作

void

mousemoveevent

(qmouseevent

*event);

void

mousepressevent

(qmouseevent

*event);

void

mousereleaseevent(qmouseevent

*);

private:
//自己重新實現拖動操作

qpoint

mouseposition;

bool

ismousepressed;

實現**:

mainwindow

.cpp

#include

//自己實現的視窗拖動操作

#include

//滑鼠事件

//標題欄的長度
const

static

intpos_min_x=

0;

const

static

intpos_max_x=

800-40;

const

static

intpos_min_y=

0;

const

static

intpos_max_y=

20;

//自己實現的視窗拖動操作
void

mainwindow::mousepressevent(qmouseevent

*event)

void

mainwindow::mousemoveevent(qmouseevent

*event)

}
void

mainwindow::mousereleaseevent(qmouseevent

*event)

void

mainwindow::on_actionminimize_triggered()

void

mainwindow::on_actionclose_triggered()

參考:

自製標題欄的拖放qt/

2011/06/

Flex 視窗最小化,最大化,拖動

想當初,我不知道如何用flex怎麼做透明air程式,非常鬱悶,今天被提起,於是總結一下這個知識。目標 1 去除windows標題欄 去除flex背景區域。2 有自己diy的最小化 最大化 關閉按鈕 3 自由拖動 縮放窗體大小 實現 2 使用nativewindow類 nativewindow類中有幾...

Flex 視窗最小化,最大化,拖動

想當初,我不知道如何用flex怎麼做透明air程式,非常鬱悶,今天被提起,於是總結一下這個知識。目標 1 去除windows標題欄 去除flex背景區域。2 有自己diy的最小化 最大化 關閉按鈕 3 自由拖動 縮放窗體大小 實現 2 使用nativewindow類 nativewindow類中有幾...

Flex視窗最小化最大化,關閉,拖動元件

目標 1 去除windows標題欄 去除flex背景區域。2 有自己diy的最小化 最大化 關閉按鈕 3 自由拖動 縮放窗體大小 2 使用nativewindow類 nativewindow類中有幾個方法 1.maximize 最大化視窗 2.restore 恢復最大化的視窗 3.minimize ...