//IController.h#ifndefICONTROLLER_H#defineICONTROLLER_H#include#include#include"TQZModel/AccountModel.h"classIController:publicQMainWindow{Q_OBJECTpublic:explicitIController;virtual~IController;protected:virtualvoidResetWindow;private:virtualvoidmouseMoveEvent;virtualvoidmousePressEvent;virtualvoidmouseReleaseEvent;virtualvoidmouseDoubleClickEvent;virtualvoidpaintEvent;protected:QMap*accountModels;private:boolm_moveable;QPointz;QMap*m_accountModels;signals:};#endif//ICONTROLLER_H//IController.cpp#include"IController.h"#include"ui_mainwindow.h"#include#include#include#include#include#include"IController.h"#include"TQZModel/AccountModel.h"#includeIController::IController:QMainWindow,m_moveable,m_accountModels{}QMap*IController::accountModels{if{this->m_accountModels=newQMap;QSettingssetting;QStringListgroupList=setting.childGroups;foreach{QMapaccountMap;setting.beginGroup;foreach){accountMap.insert.toString);}setting.endGroup;this->m_accountModels->insert);}}returnthis->m_accountModels;}voidIController::ResetWindow{widthScale=?1:widthScale;heightScale=?1:heightScale;QScreen*screen=qApp->primaryScreen;intscreenWidth=screen->size.width;intscreenHeight=screen->size.height;this->resize;this->move*0.5,screenHeight**0.;this->setAttribute;}voidIController::paintEvent{QPainterpainter;painter.setRenderHint;painter.setBrush));painter.setPen;QRectrect=this->rect;rect.setWidth-;rect.setHeight-;painter.drawRoundedRect;QWidget::paintEvent;}voidIController::mousePressEvent{if!=Qt::LeftButton)return;QWidget::mousePressEvent;QPointy=event->globalPos;QPointx=this->geometry.topLeft;this->z=y-x;this->m_moveable=true;}voidIController::mouseMoveEvent{ifreturn;QWidget::mouseMoveEvent;QPointy=event->globalPos;QPointx=y-this->z;if)return;this->move;}voidIController::mouseReleaseEvent{if!=Qt::LeftButton)return;QWidget::mouseReleaseEvent;this->m_moveable=false;}voidIController::mouseDoubleClickEvent{if!=Qt::RightButton)return;QWidget::mouseDoubleClickEvent;}IController::~IController{if{deletem_accountModels;this->m_accountModels=nullptr;}}
文章为作者独立观点,不代表股票交易接口观点