Exemplo n.º 1
0
void InstrumentsForm::onGotInstrument(void* p)
{
    auto item = (InstrumentField*)p;

    QVariantMap mdItem;
    mdItem.insert("InstrumentID", item->InstrumentID);
    mdItem.insert("ExchangeID", item->ExchangeID);
    mdItem.insert("InstrumentName", gbk2utf16(item->InstrumentName));
    mdItem.insert("ExchangeInstID", item->ExchangeInstID);
    mdItem.insert("PriceTick", item->PriceTick);
    mdItem.insert("CreateDate", item->CreateDate);
    mdItem.insert("OpenDate", item->OpenDate);
    mdItem.insert("ExpireDate", item->ExpireDate);
    mdItem.insert("StartDelivDate", item->StartDelivDate);

    //根据id找到对应的行,然后用列的text来在map里面取值设置到item里面=
    int row = ui->tableWidget->rowCount();
    ui->tableWidget->insertRow(row);
    for (int i = 0; i < instruments_col_.count(); i++) {
        QVariant raw_val = mdItem.value(instruments_col_.at(i));
        QString str_val = raw_val.toString();
        if (raw_val.type() == QMetaType::Double || raw_val.type() == QMetaType::Float) {
            str_val = QString().sprintf("%6.1f", raw_val.toDouble());
        }

        QTableWidgetItem* item = new QTableWidgetItem(str_val);
        ui->tableWidget->setItem(row, i, item);
    }
}
Exemplo n.º 2
0
 bool isErrorRsp(CThostFtdcRspInfoField* pRspInfo, int reqId)
 {
     if (pRspInfo && pRspInfo->ErrorID != 0) {
         BfInfo("<==error,reqid=%d,errorId=%d,msg=%s", reqId, pRspInfo->ErrorID,
             gbk2utf16(pRspInfo->ErrorMsg).toUtf8().constData());
         return true;
     }
     return false;
 }