В проекте мешанина стилей, недоработок, раздражающие месседж боксы и прочая ересь.
Смешано статическое и динамическое создание интерфейса.
Дублированы некоторые элементы интерфейса полями класса.
Пути к иконкам задаются по абсолютному пути. (достаточно изменить букву в названии папки и у вас весь интерфейс без картинок. Используйте относительные пути и файл ресурсов)
В общем проблема проста - у вас не вызывался слот
void MainWindow::lineTextChanged(QString filter)
из-за того, что не был связан ни один сигнал с этим слотом.
База у вас не создаётся при отсутствии. С чем работать я буду (и другие помощники) вы явно не подумали.
Так как нет базы, структура таблиц неизвестна.
Даже если бы ваш слот вызывался, никакого положительного эффекта он не имел бы из-за
Чем вы думали добавляя знаки % по сторонам от вставляемого значения? (%1 - вставляемое значение).
Решение:Замените свой кривой слот на следующий -
void MainWindow::on_lineEdit20_textChanged ( const QString & text )
{
model->setFilter(QString("Name='%1'").arg(text));
}
Объясняю что тут написано.
Этот слот будет автоматически соединён с элементов интерфейса on_
lineEdit20_textChanged( const QString & text ).
И будет вызываться при испускании этим элементом сигнала on_lineEdit20_
textChanged( const QString & text ).
Чисто по коду было выяснено, что одно из полей вашей таблицы Name.
PS а так бы я посоветовал почитать, посмотреть чужие проекты чтобы хоть чуть немного культуру кода повысить.