Qt 4.3.2
имеется форма, на ней несколько ComboBox'ов, которые заполняются при открытии формы из MySQL-таблиц абсолютно одинаково:
tmpstr="SELECT * FROM obtype ORDER BY tnam";
qry->exec(tmpstr);
while(qry->next())
{
vtype<<qry->value(0).toInt();
ui->CBType->addItem(qry->value(1).toString());
}
tmpstr="SELECT * FROM kabs ORDER BY knam";
qry->exec(tmpstr);
while(qry->next())
{
vkab<<qry->value(0).toInt();
ui->CBKab->addItem(qry->value(1).toString());
}
время от времени содержимое исходных таблиц меняется и надо перезаполнять ComboBox'ы. Опять одинаково-сначала они очищаются, потом как при запуске формы. Так вот: все очищаются нормально, а при попытке очистить CBKab вылазит сообщение
ASSERT failure in QVector<T>::operator[]: "index out of range", file /usr/include/qt4/QtCore/qvector.h, line 319
и программа закрывается. При этом перед очисткой проверяю- qDebug()<<"CBKab: "<<ui->CBKab->count(); выдает, что Combo не пустой (да это и так видно).