wumu
2025-09-25 445ff39c79373519d452e44bc8d96c1e0b01e66a
separateanalysis.cpp
@@ -100,6 +100,8 @@
        m_model->setRowCount(0); // 重置模型行数
        //int rows = 0;
        int rank_val = 0;
        double amount_old = 0;
        while (que.next()) {
            QString name = que.value(0).toString();
            QString code = que.value(1).toString();
@@ -133,7 +135,19 @@
            items.append(percentItem);
            items.append(new QStandardItem(close));
            items.append(new QStandardItem(amount));
            double amount_val = amount.toDouble(); // 交易额
            QStandardItem *amountItem = new QStandardItem(amount);
            if(amount_old > 0){
                if(amount_val / amount_old >= 3){
                    amountItem->setData(QColor("red"),Qt::BackgroundColorRole);
                    amountItem->setData(QString::number(amount_val / amount_old),Qt::ToolTipRole);
                }
            }
            items.append(amountItem);
            amount_old = amount_val;
//            items.append(new QStandardItem(amount));
            items.append(new QStandardItem(volume));
            items.append(new QStandardItem(turnover_rate));
            items.append(new QStandardItem(pe_ttm));
@@ -142,12 +156,25 @@
            if(rank_val != 0){
                double rank_rate = 1 - (amount_rank.toDouble()/rank_val);
                //items.append(new QStandardItem(QString::number(rank_rate)));
                rank_val = amount_rank.toInt();
                QStandardItem * amount_rank_item = new QStandardItem(QString::number(rank_rate));
                if(rank_rate > 0.9){
                    amount_rank_item->setData(QColor("red"),Qt::BackgroundColorRole);
                }
                if(rank_rate > 0.7 && rank_val >= 1000 && amount_rank.toInt() < 1000){
                    if(rank_rate > 0.9){
                        // 紫色
                        amount_rank_item->setData(QColor(170, 85, 255),Qt::BackgroundColorRole);
                    }else{
                        // 粉色
                        amount_rank_item->setData(QColor("pink"),Qt::BackgroundColorRole);
                    }
                }
                items.append(amount_rank_item);
                rank_val = amount_rank.toInt(); // 刷新排名
            }
            if(rank_val == 0 && amount_rank.toInt() != 0){