行业知识
qt学习:窗体无状态栏-关闭-移动
2026-11-06 02:42:43
来源:互联网转载
���录
()设置无状态栏
()关闭
设置左键弹窗关闭功能
鼠标左键事件
移动
鼠标左键事件
鼠标左键按下后移动事件
设置无状态栏
setWindowFlag(Qt::FramelessWindowHint);
关闭
设置左键弹窗关闭功能
//新建下拉菜单menuQuit = new QMenu(this);//QAction 则代表一个可以在菜单、工具栏或按钮中触发的动作QAction *closeAct = new QAction(QIcon(":/res/close.png"), tr("退出"), this);//将动作赋值给下拉菜单menuQuit->addAction(closeAct);//在 menuQuit 菜单中选择一个动作时,triggered 信号会被发出,并触发这个Lambda函数connect(menuQuit,&QMenu::triggered,this,[=]{ //关闭窗口 this->close();}); 鼠标左键事件
void Widget::mousePressEvent(QMouseEvent *event){ if(event->button() == Qt::RightButton){ //触发菜单栏 menuQuit->exec(QCursor::pos()); }} 移动
鼠标左键事件
void Widget::mousePressEvent(QMouseEvent *event){ if(event->button() == Qt::LeftButton){ //获取鼠标当前在桌面的哪个位置 mOffset = event->globalPos()-this->pos(); }} 鼠标左键按下后移动事件
void Widget::mouseMoveEvent(QMouseEvent *event){ //设置窗口的新位置 移动后的位置减去移动前的 this->move(event->globalPos() - mOffset);}
上一篇:怎么玩应用宝服务器?
下一篇:服务器换地方怎么设置端口?