Bueno, el título no expresa exactamente la duda que tengo, voy a ver si me consigo explicar:
Estoy "perpetrando" una BBDD en mis ratos libres. El programa que la maneja accede en varios puntos del programa y con diálogos diferentes a cuadros idénticos. Por ejemplo, tengo unos QLineEdit donde están los datos de las personas, los cuales tienen están rellenos con los datos actuales para que funcione el autocompletado:
Algo como esto: (para QLineEdit)
Código C++:
Ver originalQStringList *ListaValores = new QStringList();
QString cadenaConsulta = "SELECT DISTINCT "+campo[i]+" FROM socios order by "+campo[i];
consulta.exec(cadenaConsulta);
while(consulta.next())
{
*ListaValores << consulta.value(0).toStringList();
}
completer = new QCompleter(*ListaValores);
completer->setCaseSensitivity(Qt::CaseInsensitive);
editor[i]->setCompleter(completer);
O esto (Para QComboBox):
Código C++:
Ver originalQSqlQueryModel* modelZonas = new QSqlQueryModel();
QSqlQuery *consulta = new QSqlQuery ("SELECT zona FROM zonas ORDER BY id");
modelZonas->setQuery(*consulta);
comboZona->setModel(modelZonas);
La idea sería que esos mismos widgets aparecieran en otros diálogos, de forma que ya estarían rellenos y no tendría que volver a hacer la operación.
Confieso que cuando pensé en la idea me la imaginaba sencilla y sin ninguna complicación, y llevo unas cuantas horas y no doy con la tecla.
Saludos y gracias, como siempre!