2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > paip.提升用户体验---c++ qt 悬浮窗实现

paip.提升用户体验---c++ qt 悬浮窗实现

时间:2024-04-08 04:27:19

相关推荐

paip.提升用户体验---c++  qt 悬浮窗实现

paip.提升用户体验---c++ qt 悬浮窗实现

作者Attilax , EMAIL:1466519819@

来源:attilax的专栏

地址:/attilax

功能:一个悬浮窗,一个普通窗体.. 双击悬浮窗可以显示或者隐藏普通窗体...

1.建立悬浮窗:

--------------------------

悬浮窗要点:

a.从QWidget 继承..没有工具bar, 状态bar...当然,从QMainWindowi继承也能了.

b.去掉标题栏: setWindowFlags( Qt::FramelessWindowHint

c.窗体置顶 setWindowFlags( Qt::WindowStaysOnTopHint

d. 隐藏任务栏图标 setWindowFlags( Qt::Tool) //工具条模式

e: 背景透明 setAttribute(Qt::WA_TranslucentBackground, true);

f: 添加鼠标事件..拖曳..鼠标动态图标等.

void mousePressEvent(QMouseEvent *event);

void mouseMoveEvent(QMouseEvent *event);

void paintEvent(QPaintEvent *event);

void enterEvent(QEvent *event);

void leaveEvent(QEvent *event);

2.建立普通窗体.

3.悬浮窗增添双击事件,

---------------------------------

signals:

void DoubleClickedSignal();

void FormWdg:: mouseDoubleClickEvent ( QMouseEvent* event )

{

qDebug()<< " floqt win double click";

emit DoubleClickedSignal();

}

4.绑定悬浮窗双击事件信号到执行方法.

---------------------------------------------------------

int main(int argc, char *argv[])

{ MainWindow* w=new MainWindow() ;

FormWdg* widget=new FormWdg() ;

QObject:: connect(widget, SIGNAL(DoubleClickedSignal()), w, SLOT(ShowMainWindow()));

widget->show();

w->show();

5.实际的执行方法.

---------------------------

public slots:

void ShowMainWindow(); //for float invoke

void MainWindow::ShowMainWindow()

{

if(windowState() & Qt::WindowMinimized)

{ show();

setWindowState(Qt::WindowNoState);

} else {

setWindowState(Qt::WindowMinimized);

}

}

参考参考

QT中QWidget、QDialog及QMainWindow的区别 - Hi小新 - 博客园.htm

QT:不规则窗口的实现 - 小豪之家 - 博客频道 - .htm

QT:窗口最小化时显示一个小浮标_Linux编程_Linux公社-Linux系统门户网站.htm

QT:窗口最小化时显示一个小浮标_Linux编程_Linux公社-Linux系统门户网站.htm

QT中QWidget、QDialog及QMainWindow的区别 - 柳北风儿~~~~~~~欲宇仙炅 - ITeye技术网站.htm

Qt之二(窗口部件) - wen.shuijie的日志 - 网易博客.htm

QT区分鼠标单击和双击事件_陈伯林的电子备忘录_百度空间.htm

Qt自定义窗口基本事件 - chenjinxian88的专栏 - 博客频道 - .htm

QT中大connect的使用 - imxiangzi的专栏 - 博客频道 - .htm

qt的qmake和shadow build - bailizi的专栏 - 博客频道 - .htm

浅谈 qmake 之 shadow build - 1+1=2 - 博客频道 - .htm

error No rule to make target `c Users Administrator Desktop LED_mainWindow pcb_view.ui', needed by - jiong_1988的专栏 - 博客频道 - .htm

Qt 出现“undefined reference to `vtable for”原因总结 - MoMo_KUA_1的专栏 - 博客频道 - .htm

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。