parent
b6eafad1f1
commit
061cabcd2e
@ -0,0 +1,97 @@
|
|||||||
|
#include "trendwidget.h"
|
||||||
|
#include "ui_trendwidget.h"
|
||||||
|
#include <QDebug>
|
||||||
|
|
||||||
|
TrendWidget::TrendWidget(QWidget *parent) :
|
||||||
|
QWidget(parent),
|
||||||
|
ui(new Ui::TrendWidget)
|
||||||
|
{
|
||||||
|
ui->setupUi(this);
|
||||||
|
m_UserData.SetManagerType(ManagerType::Ruoyi);
|
||||||
|
}
|
||||||
|
|
||||||
|
TrendWidget::~TrendWidget()
|
||||||
|
{
|
||||||
|
delete ui;
|
||||||
|
}
|
||||||
|
|
||||||
|
void TrendWidget::SetUserInfo(UserInfo user)
|
||||||
|
{
|
||||||
|
m_UserInfo = user;
|
||||||
|
}
|
||||||
|
|
||||||
|
void TrendWidget::LoadTrendsData(const TrendsRequestParam ¶m)
|
||||||
|
{
|
||||||
|
if(param.period == m_TrendParam.period && param.tradeDay == m_TrendParam.tradeDay && param.token == m_TrendParam.token)
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if(param.period.isEmpty())
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
ui->tableWidget->clear();
|
||||||
|
m_TrendParam = param;
|
||||||
|
QList<QList<QString> > trends = m_UserData.GetTrends(param);
|
||||||
|
int rowCount = trends.count();
|
||||||
|
int columnCount = 0;
|
||||||
|
//更新到tableview中
|
||||||
|
if(rowCount > 2)
|
||||||
|
{
|
||||||
|
qDebug() << __FUNCTION__ << " trends[0]: " << trends[0];
|
||||||
|
QStringList headText;
|
||||||
|
QList<QString> columns = trends[0];
|
||||||
|
QList<QString> rows0 = trends[1];
|
||||||
|
QList<QString> rows1 = trends[2];
|
||||||
|
qDebug() << __FUNCTION__ << " trends[1]: " << trends[1];
|
||||||
|
qDebug() << __FUNCTION__ << " trends[2]: " << trends[2];
|
||||||
|
columnCount = columns.count();
|
||||||
|
ui->tableWidget->setRowCount(trends[1].count());
|
||||||
|
ui->tableWidget->setColumnCount(columnCount);
|
||||||
|
for (int column = 0; column < columnCount; ++column) {
|
||||||
|
headText << columns[column];
|
||||||
|
}
|
||||||
|
|
||||||
|
ui->tableWidget->setHorizontalHeaderLabels(headText);
|
||||||
|
ui->tableWidget->setSelectionBehavior(QAbstractItemView::SelectRows);
|
||||||
|
ui->tableWidget->setEditTriggers(QAbstractItemView::NoEditTriggers);
|
||||||
|
ui->tableWidget->setSelectionMode(QAbstractItemView::SingleSelection);
|
||||||
|
ui->tableWidget->horizontalHeader()->setSectionResizeMode(QHeaderView::Stretch);
|
||||||
|
ui->tableWidget->setAlternatingRowColors(true);
|
||||||
|
ui->tableWidget->verticalHeader()->setVisible(false);
|
||||||
|
// ui->tableWidget->horizontalHeader()->setStretchLastSection(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
//设置首列
|
||||||
|
int tableRows = trends[1].count();
|
||||||
|
for(int row = 0; row < tableRows; row++)
|
||||||
|
{
|
||||||
|
ui->tableWidget->setRowHeight(row, 24);
|
||||||
|
QTableWidgetItem *item = new QTableWidgetItem(trends[1][row]);
|
||||||
|
ui->tableWidget->setItem(row, 0, item);
|
||||||
|
|
||||||
|
}
|
||||||
|
for(int datarow = 2, col = 1; datarow < rowCount; datarow++,col++)
|
||||||
|
{
|
||||||
|
for(int tablerow = 0 ; tablerow < tableRows; tablerow++)
|
||||||
|
{
|
||||||
|
QTableWidgetItem *item = new QTableWidgetItem(trends[datarow][tablerow]);
|
||||||
|
if(item->text().toInt() <= 3 && item->text().toInt() > 0)
|
||||||
|
{
|
||||||
|
item->setTextColor(Qt::white);
|
||||||
|
item->setBackground(QBrush(Qt::red));
|
||||||
|
}
|
||||||
|
else if(item->text().toInt() <= 6 && item->text().toInt() > 3)
|
||||||
|
{
|
||||||
|
item->setTextColor(Qt::white);
|
||||||
|
item->setBackground(QBrush(QColor(255,157,0)));
|
||||||
|
}
|
||||||
|
else if(item->text().toInt() <= 10 && item->text().toInt() > 6)
|
||||||
|
{
|
||||||
|
item->setTextColor(Qt::white);
|
||||||
|
item->setBackground(QBrush(QColor(255,208,0)));
|
||||||
|
}
|
||||||
|
ui->tableWidget->setItem(tablerow, col, item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,28 @@
|
|||||||
|
#ifndef TRENDWIDGET_H
|
||||||
|
#define TRENDWIDGET_H
|
||||||
|
|
||||||
|
#include <QWidget>
|
||||||
|
#include "userdata.h"
|
||||||
|
|
||||||
|
namespace Ui {
|
||||||
|
class TrendWidget;
|
||||||
|
}
|
||||||
|
|
||||||
|
class TrendWidget : public QWidget
|
||||||
|
{
|
||||||
|
Q_OBJECT
|
||||||
|
|
||||||
|
public:
|
||||||
|
explicit TrendWidget(QWidget *parent = nullptr);
|
||||||
|
~TrendWidget();
|
||||||
|
void SetUserInfo(UserInfo user);
|
||||||
|
void LoadTrendsData(const TrendsRequestParam& param);
|
||||||
|
|
||||||
|
private:
|
||||||
|
Ui::TrendWidget *ui;
|
||||||
|
UserData m_UserData;
|
||||||
|
UserInfo m_UserInfo;
|
||||||
|
TrendsRequestParam m_TrendParam;
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif // TRENDWIDGET_H
|
||||||
@ -0,0 +1,31 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<ui version="4.0">
|
||||||
|
<class>TrendWidget</class>
|
||||||
|
<widget class="QWidget" name="TrendWidget">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>0</x>
|
||||||
|
<y>0</y>
|
||||||
|
<width>839</width>
|
||||||
|
<height>639</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="windowTitle">
|
||||||
|
<string>Form</string>
|
||||||
|
</property>
|
||||||
|
<layout class="QVBoxLayout" name="verticalLayout">
|
||||||
|
<item>
|
||||||
|
<widget class="QTableWidget" name="tableWidget">
|
||||||
|
<property name="maximumSize">
|
||||||
|
<size>
|
||||||
|
<width>16777215</width>
|
||||||
|
<height>16777215</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<resources/>
|
||||||
|
<connections/>
|
||||||
|
</ui>
|
||||||
Loading…
Reference in new issue