diff --git a/Qss.cpp b/Qss.cpp index 92fcc2b..c1cb43d 100644 --- a/Qss.cpp +++ b/Qss.cpp @@ -241,7 +241,6 @@ void QssMainWindow::OnMaxOrRestore(bool max) this->setFixedHeight(rc.height()); } } -DEFINE_RESIZE(MainWindow) QssMainWindow::QssMainWindow(QWidget *parent/* = 0*/, Qt::WindowFlags flags/* = 0*/,float scale) : QMainWindow(parent, flags), ICallDPIChanged(), @@ -258,6 +257,7 @@ QssMainWindow::QssMainWindow(QWidget *parent/* = 0*/, Qt::WindowFlags flags/* = Qt::FramelessWindowHint| Qt::WindowSystemMenuHint | Qt::WindowMinimizeButtonHint); + m_frame->setSizePolicy(QSizePolicy::Minimum,QSizePolicy::Minimum); m_frame->setMouseTracking(true); m_frame->installEventFilter(this); m_titleBar = new QssTtitleBar(m_frame); @@ -265,7 +265,7 @@ QssMainWindow::QssMainWindow(QWidget *parent/* = 0*/, Qt::WindowFlags flags/* = m_titleBar->SetMainWindow(this); QVBoxLayout* vbox = new QVBoxLayout(m_frame); vbox->addWidget(m_titleBar); - vbox->setMargin(2); + vbox->setMargin(1); vbox->setSpacing(0); vbox->addWidget(this); installEventFilter(this); @@ -419,7 +419,6 @@ void QssMainWindow::onMouseMoveEvent( QMouseEvent * ev ) QRect rc = mFrameRect; if (m_left){ rc.setLeft(rc.left() + dx); - rtCentralGeo.setLeft(rtCentralGeo.left() + dx); rtMainWindow.setLeft(rtMainWindow.left() + dx); } if (m_right){ @@ -437,12 +436,8 @@ void QssMainWindow::onMouseMoveEvent( QMouseEvent * ev ) rtCentralGeo.setBottom(rtCentralGeo.bottom() + dy); rtMainWindow.setBottom(rtMainWindow.bottom() + dy); } - this->centralWidget()->raise(); - this->centralWidget()->setGeometry(rtCentralGeo); m_frame->setGeometry(rc); m_frame->show(); - this->setGeometry(rtMainWindow); - this->show(); mFrameRect = rc; m_CentralRect = rtCentralGeo; m_pos = ev->globalPos(); @@ -506,8 +501,7 @@ void QssMainWindow::showEvent(QShowEvent *ev) } -bool QssMainWindow::eventFilter( QObject * obj, QEvent * ev ) -{ +bool QssMainWindow::eventFilter( QObject * obj, QEvent * ev ){ if (obj == m_frame) { if (ev->type() == QEvent::MouseMove) @@ -1013,7 +1007,6 @@ bool QssDialog::eventFilter( QObject * obj, QEvent * ev ) return true; } } - return QDialog::eventFilter(obj, ev); } diff --git a/Qss.h b/Qss.h index 322d9e8..83051d7 100644 --- a/Qss.h +++ b/Qss.h @@ -227,7 +227,6 @@ public: inline QssTtitleBar* titleBar(){return m_titleBar;} inline QFrame* frame(){return m_frame;} int CalCursorCol(QPoint pt); //计算鼠标X的位置 - DECLARE_RESIZE(); virtual bool eventFilter(QObject * obj, QEvent * ev); bool nativeEvent(const QByteArray &eventType, void *message, long *result);