資源簡介
詳情見我的博客:http://blog.csdn.net/what951006/article/details/52831183
無bug !和windows自帶效果一樣!且跨平臺!

代碼片段和文件信息
#include?“AbsframeLessAutoSize.h“
#include
AbsframeLessAutoSize::AbsframeLessAutoSize(QWidget?*parent)
????:?QWidget(parent)
{
????m_border=4;
????m_state.MousePressed=false;
????setMinimumSize(400550);
????setMaximumSize(800700);
????setMouseTracking(true);
????setWindowFlags(Qt::framelessWindowHint);?//setting?windows?tool?bar?icon?invisiable
????setSizePolicy(QSizePolicy::ExpandingQSizePolicy::Expanding);
}
void?AbsframeLessAutoSize::mouseMoveRect(const?QPoint&?p)
{
????if(!m_state.IsPressBorder)
????{
????????if(?p.x()>width()-m_border&&p.y()m_border)//right?side
????????{
????????????setCursor(Qt::SizeHorCursor);
????????????m_curPos=?CursorPos::Right;
????????}
????????else?if(p.x()m_border)//left?side;
????????{
????????????setCursor(Qt::SizeHorCursor);
????????????m_curPos=?CursorPos::Left;
????????}
????????else?if(p.y()>height()-m_border&&p.x()>m_border&&p.x() ????????{
????????????setCursor(Qt::SizeVerCursor);
????????????m_curPos=?CursorPos::Bottom;
????????}
????????else?if(p.y()m_border&&p.x() ????????{
????????????setCursor(Qt::SizeVerCursor);
????????????m_curPos=CursorPos::Top;
????????}
//corner
????????else?if(p.y()width()-m_border)
????????{
????????????setCursor(Qt::SizeBDiagCursor);
????????????m_curPos=CursorPos::TopRight;
????????}
????????else?if(p.y() ????????{
????????????setCursor(Qt::SizeFDiagCursor);
????????????m_curPos=CursorPos::TopLeft;
????????}
????????else?if(p.x()>m_border&&p.y()>height()-m_border)
????????{
????????????setCursor(Qt::SizeFDiagCursor);
????????????m_curPos=CursorPos::BottomRight;
????????}
????????else?if(p.x()height()-m_border)
????????{
????????????setCursor(Qt::SizeBDiagCursor);
????????????m_curPos=CursorPos::BottomLeft;
????????}
////
????????else
????????{
????????????setCursor(Qt::ArrowCursor);
????????}
????}
????else
????{
????????switch?(m_curPos)?{
????????case?CursorPos::Right:
????????{
???????????int?setW=QCursor::pos().x()-x();
???????????if(minimumWidth()<=setW&&setW<=maximumWidth())
?????????????setGeometry(x()y()setWheight());
????????????break;
????????}
????????case?CursorPos::Left:
????????{
????????????int?setW=x()+width()-QCursor::pos().x();
????????????int?setX=QCursor::pos().x();
????????????if(minimumWidth()<=setW&&setW<=maximumWidth())
??????????????setGeometry(setXy()setWheight());
?????????????break;
????????}
????????case?CursorPos::Bottom:
????????{
????????????int?setH=QCursor::pos().y()-y();
????????????if(minimumHeight()<=setH&&setH<=maximumHeight())
????????????setGeometry(x()y()width()setH);
????????????break;
????????}
????????case?CursorPos::Top:
????????{
???????????int?setH=y()-QCursor::pos().y()+height();
???????????if(minimumHeight()<=setH
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????6952??2016-10-16?16:39??Absfr
?????文件????????850??2016-10-16?16:39??Absfr
?????文件???16510464??2016-10-16?16:40??Absfr
?????文件????????390??2016-10-16?09:10??Absfr
?????文件????????203??2016-10-16?09:10??Absfr
?????目錄??????????0??2016-10-16?16:41??Absfr
-----------?---------??----------?-----??----
?????????????16518859????????????????????6
評論
共有 條評論