#include "clientmainwindow.h" #include "ui_clientmainwindow.h" #pragma execution_character_set("utf-8") ClientMainWindow::ClientMainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::ClientMainWindow) { ui->setupUi(this); // 启动界面初始化的函数 initUi(); } ClientMainWindow::~ClientMainWindow() { delete ui; } void ClientMainWindow::initUi() { ui->tabWidget->clear(); // 清除无用的前2个tab页面 // 实例化获取股票列表的界面对象 m_getStockList = new GetStockList(this); // 将股票界面对象放到主界面的tab选项卡里面来 ui->tabWidget->addTab(m_getStockList,"获取信息"); m_stockPolicy = new StockPolicy(this); ui->tabWidget->addTab(m_stockPolicy,"股票策略"); m_leadingCom = new LeadingCompany(this); ui->tabWidget->addTab(m_leadingCom,"龙头公司"); m_showInfoMess = new ShowInfoMessage(this); ui->tabWidget->addTab(m_showInfoMess,"信息提示"); m_regular = new RegularInvestment(this); ui->tabWidget->addTab(m_regular,"定投设置"); m_history = new HistoryData(this); ui->tabWidget->addTab(m_history,"历史分析"); m_deepSeek = new DeepSeekMainWindow(this); ui->tabWidget->addTab(m_deepSeek,"个股深搜"); m_agileStrategy = new AgileStrategy(this); ui->tabWidget->addTab(m_agileStrategy,"灵动策略"); m_separateAnalysis = new SeparateAnalysis(this); ui->tabWidget->addTab(m_separateAnalysis,"个股分析"); m_analysisByRedisCache = new AnalysisByRedisCache(this); ui->tabWidget->addTab(m_analysisByRedisCache,"缓存分析"); // 通过redis中的缓存来分析个股 // 关联一下2个界面的信号和槽,用来传递图表所需的数据及展示 connect(m_getStockList,SIGNAL(sendChartData(QLineSeries*)),m_stockPolicy,SLOT(showNewStockData(QLineSeries*))); connect(m_getStockList,SIGNAL(sendChartData(QSplineSeries*)),m_stockPolicy,SLOT(showNewStockData(QSplineSeries*))); connect(m_getStockList,SIGNAL(sendInfoMess(QString)),m_showInfoMess,SLOT(showInfo(QString))); connect(m_regular,SIGNAL(getClosePriceSignal(QString)),m_getStockList,SLOT(getLastClosePrice(QString))); connect(m_getStockList,SIGNAL(sendClosePrice(QString,QString)),m_regular,SLOT(showClosePrice(QString,QString))); connect(m_getStockList,SIGNAL(sendCodeNames(QMap&)),m_history,SLOT(putCodeNames(QMap&))); connect(m_history,SIGNAL(sendHistoryModel(QVector> &)),m_getStockList,SLOT(showHistoryModelData(QVector> &))); connect(m_history,SIGNAL(sendHistoryModel(QStandardItemModel*)),m_getStockList,SLOT(showHistoryModelData(QStandardItemModel*))); //connect(m_getStockList,SIGNAL(sendCodeNames(QMap&)),m_separateAnalysis,SLOT(setNamesToCombo(QMap&))); connect(m_analysisByRedisCache,SIGNAL(getStockNamesSignal(int)),m_getStockList,SLOT(getStockNamesByNum(int)),Qt::QueuedConnection); connect(m_getStockList,SIGNAL(sendNameToAnalysis(QString)),m_analysisByRedisCache,SLOT(searchAndAnalysisData(QString)),Qt::QueuedConnection); }