//! [3] void View::addItems() { int officeCount = officeTable->rowCount(); int imageOffset = 150; int leftMargin = 70; int topMargin = 40; for (int i = 0; i < officeCount; i++) { ImageItem *image; QGraphicsTextItem *label; QSqlRecord record = officeTable->record(i); int id = record.value("id").toInt(); QString file = record.value("file").toString(); QString location = record.value("location").toString(); int columnOffset = ((i / 3) * 37); int x = ((i / 3) * imageOffset) + leftMargin + columnOffset; int y = ((i % 3) * imageOffset) + topMargin; image = new ImageItem(id, QPixmap(":/" + file)); image->setData(0, i); image->setPos(x, y); scene->addItem(image); label = scene->addText(location); QPointF labelOffset((150 - label->boundingRect().width()) / 2, 120.0); label->setPos(QPointF(x, y) + labelOffset); } }
void View::addItems() { int imageOffset = 140; int leftMargin = 40; int topMargin = 40; if(comportamiento == 0) { query.prepare("select imagen_pk from e_imagen where (url = '"+carpeta+"' and reporte_operatorio_pk IS NULL)"); qDebug()<<"Entro a NULL"<<endl; } else { query.prepare("select imagen_pk from e_imagen where (url = '"+carpeta+"' and reporte_operatorio_pk = '"+documento+"')"); qDebug()<<"Entro a "<<documento<<endl; //qDebug("select imagen_pk from e_imagen where (url = '"+carpeta.toStdString()+"' and reporte_operatorio_pk = '"+documento.toStdString()+"')"); } int i = 0; query.exec(); while(query.next()) { QGraphicsTextItem *label = new QGraphicsTextItem; int id = query.value(0).toInt(); QString file = query.value(0).toString()+".JPG"; qDebug()<<"Agregando al visor"<<file<<endl; QFileInfo fileInfo(file); //fecha de creacion de archivo QString location = fileInfo.created().toString(); int columnOffset = ((i / 3) * 37); int x = ((i / 3) * imageOffset) + leftMargin + columnOffset; int y = ((i % 3) * imageOffset) + topMargin; ImageItem *image = new ImageItem(id, QPixmap(file)); image->setData(0, i); image->setPos(x, y); scene->addItem(image); label = scene->addText(location); QPointF labelOffset((150 - label->boundingRect().width()) / 2, 120.0); label->setPos(QPointF(x, y) + labelOffset); i++; //Guardando los punteros para luego eliminarlos; QPair<QGraphicsTextItem*, ImageItem*> par_punteros; par_punteros.first = label; par_punteros.second = image; punteros.push_back(par_punteros); } }