我想用Qt实现一个类似QQ的界面,但隐藏掉标题栏后怎么实现拖动和放大缩小的功能,类似QQ那样的,急求,先谢谢各位了。
------解决方案--------------------
参考下面的帖子,说的挺全面的。
http://www.devbean.net/2011/10/custom-qt-titlebar/
http://qt-project.org/faq/answer/how_can_i_handle_events_in_the_titlebar_and_change_its_color_etc
------解决方案--------------------
http://bbs.csdn.net/topics/390400118
我这个是处理拉伸的,清除标题栏这个比较常见到处都是。
和上面发的有些不同的是,我这个方法直接利用win32消息系统完成,不需要自己处理那么多东西。
------解决方案--------------------
QPoint oldPos;
bool press;
void mousePressEvent(QMouseEvent *event)
{
if(event->button() == Qt::LeftButton)
{
oldPos = event->globalPos();
press = true;
}
}
void mouseMoveEvent(QMouseEvent *event)
{
if (press)
{
this->move(this->pos() + event->globalPos() - oldPos);
oldPos = event->globalPos();
}
}
void mouseReleaseEvent(QMouseEvent *event)
{
press = false;
}